테이블에 null 값이 있습니다. ORDER 테이블에서 PART_ID 섹션에는 2 개의 null이 있고 CUSTOMER_ID에는 2 개의 null 값이 있습니다.LEFT OUTER JOIN EQUIVALENT
SELECT O.ORDER_ID , O.ORDER_DATE , O.CUST_ID, O.QUANTITY ,O.PART_ID ,
C.CUST_NAME, C.CUST_CODE, P.PART_NAME, P.PART_CODE
FROM [ORDER] O
LEFT OUTER JOIN PART P ON P.PART_ID = O.PART_ID
LEFT OUTER JOIN CUSTOMER C ON C.CUST_ID = O.CUST_ID
그래서 여기 내 질문은 :
와 나는 쿼리의 종류가있다. 외부 조인을 사용하지 않고 어떻게 할 수 있습니까? 나는 존재하지 않는 것을 포함하여 너무 많은 것을 시도했다;
SELECT *
FROM [ORDER] O ,CUSTOMER C, PART P
WHERE C.CUST_ID = (
SELECT CUST_ID FROM CUSTOMER C WHERE O.CUST_ID = C.CUST_ID
) AND P.PART_ID = (SELECT PART_ID FROM PART P WHERE O.PART_ID = P.PART_ID)
그러나 해결책을 찾을 수 없습니다. 어떻게 될지 해결책이 있다면?
(참고 :.이 숙제입니다)
나는 테이블의 종류가 있습니다
왼쪽 외부 조인을 준다 :
년 HW 그것은 외부 조인을 사용하지 않고 왼쪽 외부 조인과 동일한 테이블을 얻는다 고 말했다. 하지만 내가 말한 것처럼. 나는 또한 MSSQL을 사용하고있다.
왜 하시겠습니까? – Yuck
왜 구문이 사용되지 않으며 정적 분석 도구로 인해 권장되지 않는지 궁금한 점 (http://msdn.microsoft.com/en-us/library/dd172122%28v=vs.100%29.aspx) –
또한 LEFT OUTER JOIN의 OUTER도 함축되어 있습니다. 대신에 LEFT JOIN을 쓸 수 있습니다. – Yuck