약간의 문제가 있습니다. 나는 두 개의 테이블을 가지고있다. 첫 번째 것은 모든 id를 포함하고 두 번째는 tableA에서 모두가 아니라 값과 해당 식별자를 포함합니다. 내가 이해했다고 생각했듯이, ID에 대한 왼쪽 조인은 첫 번째 테이블에 모든 ID를, 두 번째 테이블에는 ID를 제공해야합니다. id가 tableB에없는 경우. 하지만 두 테이블에 존재하는 ID의 수는 계속해서 늘고 있습니다. 나는 개념을 틀리게 받았 느냐?MySQL에 가입하면 남은 결과가 적습니다.
내 문은 지금까지입니다 :
SELECT tableA.id, tableB.desiredValue
FROM tableA
LEFT JOIN tableB ON tableA.id=tableB.item_id
WHERE tableB.element_id = 'something'
OR tableB.element_id IS NULL;
모든 포인터? 이는 것 같아, 일반적으로
SELECT tableA.id, tableB.desiredValue
FROM tableA
LEFT JOIN tableB ON tableA.id=tableB.item_id
AND tableB.element_id = 'something'
--- WHERE tableB.element_id IS NULL --- this is probably not appropriate
;
'WHERE' 절없이 사용해보십시오. 쿼리의 다른 곳에서는'element_id'를 사용하지 않습니다. 아마도'element_id'는 결코 NULL이 아니겠습니까? 당신은 개념이 정확하고, WHERE를 제거함으로써 시작한다면, 당신은 아마도 당신이 기대하는 것에 더 가깝게 볼 것입니다. –
그걸로 실패하면 몇 줄의 샘플 데이터를 보여줄 것입니다 –
tableA의 모든 항목을 표시하고 tableB에 해당 항목이 있으면 tableB의 항목도 표시 하시겠습니까? –