값이 존재하지 않는 경우에만 행을 반환합니다.
P粉043470158
P粉043470158 2023-08-24 22:07:48
0
2
374
<p>테이블이 2개 있습니다. - <code>Booking</code>: </p> <pre class="brush:php;toolbar:false;">some_other_column | --+------ 1 | 값 2|값 3 | 값</pre> <p>두 번째 테이블 - <code>reservation_log</code>: </p> <pre class="brush:php;toolbar:false;">reservation_id | -----+---+------------- 1 | 1 | 2 | 2 | 3 | 3 | 4 | 1 | 취소 5 | 2 | 취소</사전> <p>취소되지 않은 예약만 선택하면 됩니다(이 경우 ID 3만 해당). 간단한 <code>WHEREchange_type = cancel</code> 조건을 사용하여 "취소"를 쉽게 선택할 수 있지만 간단한 <code>WHERE</code> 여기서는 일하지 마세요. </p>
P粉043470158
P粉043470158

모든 응답(2)
P粉596161915

완전함을 위해(저는 이것이 더 적합하다고 믿습니다) 간단한 NOT EXISTS을 사용하는 것이 좋습니다.

으아악
P粉692052513

으아아아

또는:

으아아아

첫 번째 버전이 더 직관적이지만 일반적으로 두 번째 버전을 사용하면 더 나은 성능을 얻을 수 있다고 생각합니다(조인에 사용된 열에 인덱스가 있다고 가정).

두 번째 버전은 LEFT JOIN이 첫 번째 테이블의 모든 행에 대해 하나의 행을 반환하기 때문에 작동합니다. ON 条件成功时,这些行将包含第二个表中的列,就像 INNER JOIN 一样。当条件失败时,返回的行将包含第二个表中所有列的 NULL。然后,WHERE l.id IS NULL 테스트가 이 행과 일치하면 테이블 간에 일치하지 않는 모든 행을 찾습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿