하나의 쿼리 만 사용하여 상위 테이블과 하위 테이블의 레코드를 삭제하려고합니다. 필드 이름이 TABLENAME
인 부모 테이블 PARENT_TABLE
에 자식 테이블 이름 CHILD1_TABLE
이 있습니다. 상위 테이블에 더 많은 하위 테이블이 포함되어 있습니다. 상위 테이블뿐만 아니라 하위 테이블 중 하나에서 하나의 레코드 만 삭제하려고합니다. 공통 필드는 자식 테이블과 부모 테이블 모두에서 ID
입니다. 나는이 같은쿼리 결과를 테이블 이름으로 사용
DELETE PARENT.*,CHILD.*
FROM PARENT_TABLE PARENT
INNER JOIN (SELECT TABLENAME FROM PARENT_TABLE WHERE ID='CHILD1-001') CHILD
ON PARENT.ID=CHILD.ID
WHERE PARENT.ID='CHILD1-001'
을 내 쿼리를 작성하지만하지 작동합니다. 아무도 나를 도울 수 있습니까?
아마도 여기에 도움이되는 아이디어 중 일부는 - [동적 SQL을 MySQL에 저장하는 방법] (http://stackoverflow.com/questions/190776/how-to-have-dynamic-sql-in-mysql-stored) - 절차) – Randall