본문 바로가기

MySQL19

[MySQL] MySQL Table 합치기 & 중복 data 제거 테이블 A와 B가 있다. 이 두 테이블은 같은 column 구조로 구성되며, 일부 같은 data를 가진다. Table을 합치고, 중복되는 data는 제거해보자! DELETE A FROM [Table Name] A INNER JOIN (SELECT MAX(index) AS index FROM [Table Name] GROUP BY [Column Name] HAVING COUNT(index) > 1) B ON A.idx = B.idx ; https://papababo.tistory.com/entry/mariaDBmysql-%EC%A4%91%EB%B3%B5%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%A1%B0%ED%9A%8C-%EB%B0%8F-%EC%82%AD%EC%A0%9C%ED%95%98%EA.. 2022. 6. 24.
[MySQL] 인덱스(index) 추가 & 삭제 기존 테이블에 Index Column 추가 ALTER TABLE [TABLE NAME] ADD [COLUMN NAME] [TYPE] [OPTION]; # 첫 INDEX 생성 시, PRIMARY KEY FIRST 추가 필수 ALTER TABLE [TABLE NAME] ADD [INDEX NAME] INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST; # 인덱스 삭제 ALTER TABLE [TABLE NAME] DROP INDEX [INDEX NAME]; https://velog.io/@ejayjeon/MYSQL-autoincrement-%EC%83%9D%EC%84%B1-%EC%B6%94%EA%B0%80-%EC%82%AC%EC%9A%A9-%EB%93%B1-%EC%A0%95%EB.. 2022. 6. 22.
[MySQL] Cardinality - 희소성이라고 생각하면 됨. 같은 물질이지만 diamond vs 석탄의 가치는 다름 - 해당 Column의 중복 수치(quantity) - 중복도가 낮으면, Cardinality가 높음 - 중복도가 높으면, Cardinality가 낮음 - 회사 부서별 인원 table이 있다고 했을 때, 부서는 상위 category라 Cardinary 낮음 - 부서에 속한 각 인원은 Unique한 이름을 가지기에 Cardinality가 높음 - 여러 Column을 index로 생성 시, Cardinality가 높은 순서로 구성하면 탐색 속도가 빨라짐 - table column 순서 : [Diamond] [석탄]. Unique한걸 sql이 먼저 찾음 - SHOW INDEX FROM [TABLE NAME] 으로 Cardin.. 2022. 6. 21.
[MySQL] MySQL access denied 오류 해결 mysql 에 root 계정 하나만 만들어 놓고 쓰다가... 에러 먹어 과히 고생하고 마음 아파 쓰는 글. [Error] 28000, Access denied for user 'root'@'localhost' using password: YES 아니면 NO 작업용 계정에 문제가 생기면 mysql root 계정에서 관리자 권한으로 들어가 해결 가능하나, root 계정에 문제가 생기면? 거진 reinstall 밖에 답이 없다. 근데 reinstall 하면 내 database는? 수십만개의 data는? 내 이틀의 시간은? 리눅스라면 reinstall 해도 database가 계속 남아있어 재사용 가능하다는 구석 글을 봤으나, win은 그런 글이 없다. database 파일 or 폴더를 따로 빼놓고 MySQL만 .. 2022. 6. 14.