>데이터 베이스 >MySQL 튜토리얼 >EXISTS 쿼리: SELECT * 또는 SELECT 1 – 어떤 하위 쿼리 구문이 더 읽기 쉽습니까?

EXISTS 쿼리: SELECT * 또는 SELECT 1 – 어떤 하위 쿼리 구문이 더 읽기 쉽습니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-29 08:23:14581검색

EXISTS Queries: SELECT * or SELECT 1 – Which Subquery Syntax is More Readable?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.