-
Maria - DELETE문은 자기 테이블을 참조 못한다프로그래밍/DBMS 2023. 8. 7.반응형
에러 :
DELETE FROM table WHERE userid IN ( SELECT userid FROM table group by tag_name, userid HAVING COUNT(username) > 1 ) ;
원인 :
table 이란 테이블에서 중복 컬럼들을 찾아서 제거하는 쿼리문을 작성 했는데
문법에 틀린 부분이 없는데 에러가 발생
알고보니 DELETE를 하려는 테이블에서 WHERE 조건절에 DELETE하려는 테이블을 참조를 못한다는것.
해결:
DELETE FROM table WHERE userid IN ( SELECT temp.userid FROM ( SELECT userid FROM table group by tag_name, userid HAVING COUNT(username) > 1 ) AS temp ) ;
서브쿼리로 감싸서 해당 테이블을 다른 테이블로 명시하면 된다.
반응형'프로그래밍 > DBMS' 카테고리의 다른 글
MariaDB - 로그 활성화하는 방법 (0) 2024.04.17 MySql - 마리아DB 수동 백업하기 [mysqldump] (0) 2023.09.04 MariaDB - bin binary log 활성화 (0) 2023.08.03 리눅스 centos7 - MariaDB(마리아디비) 11.0 버전 설치 (0) 2023.07.28 SQL Developer - 데이터 엑셀 추출 및 환경 설정 하기 (0) 2023.01.02