>데이터 베이스 >MySQL 튜토리얼 >SQL에서 EXISTS 및 NOT EXISTS를 사용하기 위한 구문

SQL에서 EXISTS 및 NOT EXISTS를 사용하기 위한 구문

王林
王林원래의
2024-02-19 23:08:061124검색

sql中exists,not exists的用法

SQL에서 존재 및 존재하지 않음을 사용하려면 특정 코드 예제가 필요합니다.

SQL에서 존재 및 존재하지 않음은 일반적으로 사용되는 조건자(predicate) 쌍으로, 하위 쿼리(subquery)가 결과 집합을 반환하는지 여부를 결정하는 데 사용됩니다. 존재함은 하위 쿼리가 하나 이상의 결과 행을 반환하는지 여부를 확인하는 데 사용되고, 존재하지 않음은 하위 쿼리가 결과를 반환하지 않는지 확인하는 데 사용됩니다.

exists의 구문은 다음과 같습니다.

SELECT column1, column2, ...
FROM table
WHERE EXISTS (subquery);

notexists의 구문은 다음과 같습니다.

SELECT column1, column2, ...
FROM table
WHERE NOT EXISTS (subquery);

다음에서는 몇 가지 구체적인 예를 사용하여 존재 및 존재하지 않음의 사용법을 소개합니다.

예제 1: 특정 조건이 있는 레코드 찾기

"employee_id", "first_name" 및 "last_name"과 같은 열을 포함하여 직원 정보가 포함된 "employees"라는 테이블이 있다고 가정합니다. 우리는 직위 "관리자"가 존재하는 모든 직원 정보를 찾고 싶습니다.

SELECT employee_id, first_name, last_name
FROM employees
WHERE EXISTS (SELECT 1
              FROM employees
              WHERE job_title = 'manager'
                AND employees.employee_id = manager_id);

위 코드의 하위 쿼리는 "employees" 테이블에서 "manager" 위치의 레코드를 검색합니다. 외부 기본 쿼리는 존재 조건자를 사용하여 하위 쿼리가 결과 행을 하나 이상 반환하는지 여부를 결정합니다.

예제 2: 특정 조건이 없는 레코드 찾기

이제 "관리자" 직위가 없는 직원에 대한 정보를 찾고 싶다고 가정해 보겠습니다.

SELECT employee_id, first_name, last_name
FROM employees
WHERE NOT EXISTS (SELECT 1
                  FROM employees
                  WHERE job_title = 'manager'
                    AND employees.employee_id = manager_id);

위 코드의 하위 쿼리는 "employees" 테이블에서 "manager" 위치의 레코드도 검색합니다. 외부 기본 쿼리는 존재하지 않음 조건자를 사용하여 하위 쿼리가 결과를 반환하지 않는지 여부를 결정합니다.

예 3: 하위 쿼리 비교

조건자로 존재하고 존재하지 않는 하위 쿼리는 다른 조건을 사용하여 필터링할 수도 있습니다.

연봉이 가장 높은 직원에 대한 정보를 찾고 싶다고 가정해 보겠습니다.

SELECT employee_id, first_name, last_name
FROM employees e1
WHERE NOT EXISTS (SELECT 1
                  FROM employees e2
                  WHERE e2.salary > e1.salary);

위 코드에서 하위 쿼리는 현재 직원보다 급여가 높은 레코드를 검색하고 존재하지 않는 조건자를 사용하여 조건을 충족하는 레코드가 없는지 확인합니다.

요약:

exists와 not presents는 SQL에서 일반적으로 사용되는 조건자로, 하위 쿼리가 결과 집합을 반환하는지 확인하는 데 사용됩니다. 존재함은 하나 이상의 결과 행이 존재하는지 판별하는 데 사용되고, 존재하지 않음은 결과가 없음을 판별하는 데 사용됩니다. 존재 및 존재하지 않음을 사용하면 다양한 비즈니스 요구 사항을 충족하는 보다 유연한 쿼리 문을 작성할 수 있습니다.

위 내용은 SQL에서 EXISTS 및 NOT EXISTS를 사용하기 위한 구문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

관련 기사

더보기