DB/MySQL3 MariaDB 내 중복된 데이터 삭제하기 MariaDB에서 중복된 데이터를 삭제하는 방법을 알아보겠습니다. SELECT col1, COUNT(col1) FROM tbl GROUP BY col1 HAVING COUNT(col1) > 1; 위 SELECT 쿼리를 통해 특정 열에서 같은 값을 가지는 데이터가 몇개 있는지 추출할 수 있습니다. DELETE t1 FROM tbl t1 JOIN tbl t2 ON t1.col1=t2.col1 WHERE t1.id > t2.id; 위 DELETE 쿼리를 통해 특정 열에서 같은 값을 가지는 데이터중 가장 먼저 생성된 한 행을 제외한 중복 데이터들을 삭제할 수 있습니다. 참조 https://www.mysqltutorial.org/mysql-delete-duplicate-rows/ 2023. 2. 27. 외래 키가 있는 테이블을 truncate/delete하는 방법 외래키가 존재하는 테이블 내의 데이터를 삭제할 때 위와 같은 에러 메시지가 발생한다. set FOREIGN_KEY_CHECKS = 0; TRUNCATE user_table; set FOREIGN_KEY_CHECKS = 1; 위와 같이 외래키를 체크 하지 않는 설정으로 변경해준 후, truncate하면 정상적으로 실행되는 것을 알 수 있다. 이후 반드시 외래키를 체크하게 설정을 변경해주어야 한다. 2022. 7. 11. MySQL 더미 데이터 생성하기 MySQL에서 더미 데이터를 생성하는 법을 알아보겠습니다. 쿼리 성능을 측정하기 위해 더미 데이터를 10만개 정도를 Insert 할 일이 있었습니다. 가장 먼저 사용한 방법은 서버 내부에서 for문을 사용해 Insert 해주는 방법이었습니다. 그러나 이 방법은 1만개 정도의 데이터를 Insert 하는데 분 단위 이상의 시간이 소요되어 다른 방법을 찾아야 했습니다. 다음으로 사용한 방법은 오늘 알아볼 MySQL에 직접 Insert 쿼리를 작성해주는 방법이었습니다. 아래는 더미 데이터를 10만개 생성하는 프로시저 쿼리문입니다. // MySQL Query문 DELIMITER $$ DROP PROCEDURE IF EXISTS loopInsert$$ CREATE PROCEDURE loopInsert() BEGIN.. 2022. 7. 11. 이전 1 다음