0
내가 두 테이블, 즉 고객 및 아래 제품이이 정의SQL 하위 선택 해상도
고객
customer_id
있다.customer_name
.
제품
product_id
.product_name
. 내가SELECT customer_id FROM customer WHERE customer_id IN (SELECT customer_id FROM product)
내 기대는 것이 었습니다 다음 쿼리를 실행하면
고객 테이블이
customer_id |customer_name
----------------------------
1 | abc
----------------------------
2 | efg
------------------------------
제품 테이블 아래로 채워지는
product_id|product_name
------------------------------
1 | chair
-----------------------------
2 | desk
------------------------------
아래로 채워집니다 produ에 no customer_id 열 오류가 발생합니다. ct 테이블 대신이 쿼리는 고객 테이블의 모든 행을 반환합니다. 아무도 여기서 무슨 일이 일어 났는지 설명 할 수 있습니까? 하위 쿼리가 부모 쿼리의 테이블을 사용하여 불만없이 결과를 반환하는 이유는 무엇입니까?
이 같은 쿼리가'고객에서 삭제한다는 뜻 where customer_id IN (SELECT customer_id FROM product)'이 고객 테이블에서 모든 레코드를 삭제합니까? 무섭다. – AceKing