여러 테이블 (3 또는 4)을 조인하고 예상대로 결과를 얻는 쿼리가 있습니다. 그래서 기본적으로 내가 처음에이 두 번째 쿼리의 결과를 포함하지 할하위 쿼리에서 모든 EXCEPT 결과를 선택하십시오.
SELECT test_id, COUNT(*) AS theCount FROM tests
JOIN test_questions ON test_id= tq_test_id
WHERE type= 'THE_TYPE'
GROUP BY test_id
HAVING theCount = 1
:
SELECT DISTINCT test_title, stt_id FROM student_tests
LEFT JOIN student_test_answers ON sta_stt_num = stt_id
JOIN tests ON stt_test_id = test_id
WHERE student_test_answer_id IS NULL
내가 다른 데이터 세트를 보여줍니다 다른 쿼리를 가지고, 그것은 기본적으로 이것이다. test_id는 결합 필드가됩니다.
나는 존재하지 않는 곳 (위의 쿼리 -)을 시도했지만 올바르지 않은 결과는 반환하지 않습니다. 나는 또한 '안에()'시도했다
더 좋은 방법이 있나요? 이 같은
실제 검색어를 보지 않고 하위 쿼리가 상관되지 않았다고 추측합니다. – mustaccio
실제 검색어, 데이터 샘플 및 예상 결과를 알려주십시오. 귀하의 설명이 명확하지 않고 쿼리가 명확하지 않습니다 :'test_id = tq_test_id' - 해당 열이 어떤 테이블에 속해 있는지 알 수 없습니다 – Alex
정확히 어떻게 NOT IN()을 시도 했습니까? 이 쿼리를 하위 쿼리로 사용하려면 결과 집합에 theCount가 필요하지 않습니다. – Philipp