SQL CASE문 사용자가 다양한 조건에 따라 다양한 작업을 실행할 수 있도록 하는 조건식입니다. 이는 다른 프로그래밍 언어의 if-else 논리와 유사합니다.
SQL의 CASE 문
SQL의 CASE 표현식은 모든 조건을 통과하고 조건이 충족되면 중지됩니다. 조건이 true를 반환한 후에는 다른 조건을 확인하지 않고 해당 조건에 따라 결과를 반환합니다.
조건이 참이 아니면 ELSE 부분이 실행됩니다. ELSE 부분이 없으면 반환됩니다. 없는.
통사론
SQL에서 CASE 문을 사용하려면 다음 구문을 사용하십시오.
사례 케이스_값
언제 상태 그 다음에 결과1
언제 상태 그 다음에 결과 2
…
또 다른 결과
끝 사례;
SQL CASE 예
더 잘 이해하기 위해 SQL의 CASE 문의 몇 가지 예를 살펴보겠습니다.
예제에서 사용할 데모 SQL 테이블을 만들어 보겠습니다.
데모 SQL 데이터베이스
우리는 SQL CASE 문에 대한 예제로 이 샘플 SQL 테이블을 사용할 것입니다.
| 고객 ID | 고객 이름 | 성 | 국가 | 나이 | 핸드폰 |
|---|---|---|---|---|---|
| 1 | 의심 | 타쿠르 | 인도 | 23 | xxxxxxxxx |
| 2 | 안전한 | 초프라 | 호주 | 이십 일 | xxxxxxxxx |
| 삼 | 나빈 | 툴라시 | 스리랑카 | 24 | xxxxxxxxx |
| 4 | 아디트야 | 아르판 | 오스트리아 | 이십 일 | xxxxxxxxx |
| 5 | 니샨트. 소시지 S.A. | 자이나교 | 스페인 | 22 | xxxxxxxxx |
다음 MySQL 쿼리를 작성하여 시스템에 동일한 데이터베이스를 생성할 수 있습니다.
MySQL CREATE TABLE Customer( CustomerID INT PRIMARY KEY, CustomerName VARCHAR(50), LastName VARCHAR(50), Country VARCHAR(50), Age int(2), Phone int(10) ); -- Insert some sample data into the Customers table INSERT INTO Customer (CustomerID, CustomerName, LastName, Country, Age, Phone) VALUES (1, 'Shubham', 'Thakur', 'India','23','xxxxxxxxxx'), (2, 'Aman ', 'Chopra', 'Australia','21','xxxxxxxxxx'), (3, 'Naveen', 'Tulasi', 'Sri lanka','24','xxxxxxxxxx'), (4, 'Aditya', 'Arpan', 'Austria','21','xxxxxxxxxx'), (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain','22','xxxxxxxxxx');>
CASE 표현 예
이 예에서는 CASE 문을 사용합니다.
질문:
SELECT CustomerName, Age , CASE WHEN Country = 'India' THEN 'Indian' ELSE 'Foreign' END AS Nationality FROM Customer;>
조건이 여러 개인 경우의 SQL CASE 예
CASE 문에 여러 조건을 사용하여 여러 조건을 추가할 수 있습니다. 언제 조항.
자바 대 C++
질문:
SELECT CustomerName, Age, CASE WHEN Age>22 THEN '나이가 22세보다 큽니다' WHEN 나이 = 21 THEN '나이가 21세입니다' ELSE '나이가 30세를 넘습니다' END AS QuantityText FROM Customer;>
산출:

산출
ORDER BY 절이 포함된 CASE 문 예
CustomerID, CustomerName, LastName, Country, Age 및 Phone이 포함된 고객 테이블을 살펴보겠습니다. 다음을 사용하여 Customer 테이블의 데이터를 확인할 수 있습니다. 주문 CASE 문이 있는 절입니다.
질문:
SELECT CustomerName, Country FROM Customer ORDER BY ( CASE WHEN Country IS 'India' THEN Country ELSE Age END );>
산출:

ORDER BY 절이 있는 CASE 문 예제 출력
CASE 문에 대한 중요 사항
- SQL CASE 문은 지정된 조건에 따라 다양한 쿼리를 실행할 수 있는 조건식입니다.
- 항상 선택하다 CASE 문에서.
- END ELSE는 선택적인 구성 요소이지만 언제 이러한 경우는 CASE 문에 포함되어야 합니다.
- 조건 연산자(예: 어디 ) WHEN과 THEN 사이에 있습니다. 여기에는 AND 및 OR을 사용하여 여러 조건문을 연결하는 것이 포함됩니다.
- 해결되지 않은 조건에 대응하기 위해 여러 WHEN 문과 ELSE 문을 포함할 수 있습니다.