logo

SQL CASE 문

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의심타쿠르인도23xxxxxxxxx
2안전한초프라호주이십 일xxxxxxxxx
나빈툴라시스리랑카24xxxxxxxxx
4아디트야아르판오스트리아이십 일xxxxxxxxx
5니샨트. 소시지 S.A.자이나교스페인22xxxxxxxxx

다음 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;>

산출:

Case 문 예시 출력에 여러 조건 추가

산출

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 문

ORDER BY 절이 있는 CASE 문 예제 출력

CASE 문에 대한 중요 사항

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