집 >데이터 베이스 >MySQL 튜토리얼 >EXISTS 쿼리: SELECT * 또는 SELECT 1 – 어떤 하위 쿼리 구문이 더 읽기 쉽습니까?
EXISTS 쿼리의 하위 쿼리 가독성
EXISTS 쿼리에서 어떤 하위 쿼리 구문이 더 읽기 쉬운지에 대한 질문은 이해와 코드 명확성. 두 가지 일반적인 접근 방식 간에 성능에는 큰 차이가 없지만 가장 적합한 옵션을 선택하면 가독성이 향상되고 유지 관리가 단순화될 수 있습니다.
처음에는 "EXISTS (SELECT * FROM baz WHERE baz.id) 구문을 사용하는 데이터베이스를 선호했습니다. = bar.id)" 문서에 있습니다. 그러나 시간이 지남에 따라 업계는 더 간단한 형태인 "EXISTS (SELECT 1 FROM baz WHERE baz.id = bar.id)"에 끌렸습니다.
"SELECT " 사용에 대한 직관적인 주장은 다음과 같습니다. 이는 하위 쿼리에 모든* 레코드가 있는지 검색하는 것을 의미합니다. 그러나 이는 몇 가지 오해로 이어집니다. 업계 권장 사항에 명시된 대로 하위 쿼리 레코드의 내용이 아니라 존재 여부에 초점을 맞춰야 합니다.
"EXISTS (SELECT 1 ..)" 구문을 사용하면 하위 쿼리에서 하나의 레코드만 반환됩니다. . 이는 지정된 조인 조건에서 레코드의 유무를 확인하는 세미 조인이라는 EXISTS의 정의와 일치합니다.
따라서 보다 직관적이고 업계 표준적인 접근 방식은 " EXISTS (SELECT 1 ..)'을 사용하면 불필요한 복잡성이나 혼란을 초래하는 대신 존재 여부를 판단하는 데 중점을 두기 때문입니다.
위 내용은 EXISTS 쿼리: SELECT * 또는 SELECT 1 – 어떤 하위 쿼리 구문이 더 읽기 쉽습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!