Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL SELECT로 간단한 BOOLEAN 평가 수행하기 – CASE 문 활용법

MySQL에서 간단한 BOOLEAN(불리언) 평가를 수행하려면 CASE 문을 활용할 수 있습니다. CASE 문은 주어진 조건에 따라 서로 다른 값을 반환하는 구문으로, 두 컬럼의 값을 비교하여 'true' 또는 'false'를 출력하는 데 매우 유용합니다. 아래 예제를 통해 단계별로 살펴보겠습니다.

1. 테이블 생성하기

먼저 예제에 사용할 테이블을 생성합니다. Id는 자동 증가 기본 키로 설정하고, 비교 대상이 될 정수형 컬럼 두 개를 만듭니다.

mysql> create table BooleanEvaluationDemo
-> (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> FirstValue int,
-> SecondValue int
-> );
Query OK, 0 rows affected (0.71 sec)

2. 레코드 삽입하기

INSERT 명령을 사용하여 테이블에 몇 개의 샘플 데이터를 추가합니다.

mysql> insert into BooleanEvaluationDemo(FirstValue,SecondValue) values(10,5);
Query OK, 1 row affected (0.20 sec)
mysql> insert into BooleanEvaluationDemo(FirstValue,SecondValue) values(15,20);
Query OK, 1 row affected (0.16 sec)
mysql> insert into BooleanEvaluationDemo(FirstValue,SecondValue) values(50,40);
Query OK, 1 row affected (0.14 sec)
mysql> insert into BooleanEvaluationDemo(FirstValue,SecondValue) values(500,1000);
Query OK, 1 row affected (0.13 sec)

3. 전체 레코드 조회하기

SELECT 문으로 테이블에 저장된 모든 레코드를 확인합니다.

mysql> select *from BooleanEvaluationDemo;

실행 결과는 다음과 같습니다.

+----+------------+-------------+
| Id | FirstValue | SecondValue |
+----+------------+-------------+
| 1 | 10 | 5 |
| 2 | 15 | 20 |
| 3 | 50 | 40 |
| 4 | 500 | 1000 |
+----+------------+-------------+
4 rows in set (0.00 sec)

4. CASE 문으로 BOOLEAN 평가 수행하기

이제 CASE 문을 사용하여 FirstValue가 SecondValue보다 큰지 여부를 'true' 또는 'false'로 판별하는 쿼리를 작성합니다.

mysql> SELECT FirstValue,SecondValue,CASE WHEN FirstValue > SecondValue THEN
'true' ELSE 'false' END AS FirstValuesGreaterThanSecond from BooleanEvaluationDemo;

위 쿼리의 실행 결과는 다음과 같습니다.

+------------+-------------+-------------------------------+
| FirstValue | SecondValue | FirstValuesGreaterThanSecond |
+------------+-------------+-------------------------------+
| 10 | 5 | true |
| 15 | 20 | false |
| 50 | 40 | true |
| 500 | 1000 | false |
+------------+-------------+-------------------------------+
4 rows in set (0.00 sec)

결과 해석

출력 결과를 보면 FirstValue가 SecondValue보다 큰 경우(10 > 5, 50 > 40)에는 'true'가 반환되고, 그렇지 않은 경우(15 < 20, 500 < 1000)에는 'false'가 반환되는 것을 확인할 수 있습니다. 이처럼 CASE WHEN 구문을 활용하면 별도의 애플리케이션 로직 없이 SQL 쿼리 내에서 간단하고 직관적으로 불리언 조건을 평가할 수 있습니다.