3
테이블이 두 개 있습니다 (opensalesorder
및 items
).오른쪽 조인 쿼리가 작동하지 않습니다.
item_number를 기반으로 두 테이블에서 데이터를 검색하려고하는데 아래 쿼리에서 제대로 작동합니다.
SELECT opensalesorder.so_number,items.VendorName,opensalesorder.item_number
FROM `opensalesorder`
INNER JOIN items on opensalesorder.item_number = items.ItemName
WHERE items.ItemType = 'Stock' and opensalesorder.status NOT LIKE 'on po'
GROUP BY opensalesorder.item_number
을 (INNER JOIN을 사용) 그러나 나는 또한 opensalesorder 및 항목에서 항목 이름에 대한 발견 된 일치하는 항목이없는 경우에도 '항목'테이블에서 모든 행을 원한다.
하지만 아래 쿼리를 사용하는 것이 저에게 효과적이지 않은 것 같습니다.
SELECT opensalesorder.so_number,items.VendorName,opensalesorder.item_number
FROM `opensalesorder`
RIGHT JOIN items on opensalesorder.item_number = items.ItemName
WHERE items.ItemType = 'Stock' and opensalesorder.status NOT LIKE 'on po'
GROUP BY opensalesorder.item_number
오른쪽 조인은 왼쪽에 일치하는 항목이없는 경우에도 올바른 표의 결과를 반환합니다.
검색어가 맞습니까?
감사
에 의해 그룹에 opensalesorder.item_number 것 또한 문제가 발생할 :
솔루션은
on
절에 이동하는 것입니다? items.ItemName 및 해당 작업 있지만 그룹의 opensalesorder.item_number – Pratik@Pratik 변경 한 때문에. . . 행을 필터링하는 의미에서 "문제"가 발생하지는 않습니다. 해당 열에 대해 모두 'NULL'값을 가진 행으로 그룹화되기 때문에 원하는 결과가 아닐 수도 있습니다. –
고마워 .... 그게 효과가 ... – Pratik