Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

SUM() 함수 내에서 조건식을 사용할 때 MySQL은 어떻게 평가합니까?


알다시피 SUM() 함수 내에서 조건식을 사용하여 조건을 충족하는 행 수를 얻을 수 있습니다. 따라서 이 경우 MySQL은 조건이 참일 때마다 1로 평가하고 거짓일 때마다 0으로 평가합니다.

이해하려면 다음 세부 정보가 있는 '직원' 테이블의 다음 예를 고려하십시오. −

mysql> Select * from Employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | 20000  |
| 6  | Mohan  | 30000  |
| 7  | Aryan  |  NULL  |
| 8  | Vinay  |  NULL  |
+----+--------+--------+
8 rows in set (0.00 sec)

이제 급여가 20000보다 큰 행의 총 수를 알고 싶다면 조건식을 SUM() 함수 내에서 다음과 같이 사용할 수 있습니다. -

mysql> Select SUM(Salary>20000) from employee568;
+-------------------+
| SUM(Salary>20000) |
+-------------------+
|                 4 |
+-------------------+
1 row in set (0.00 sec)

위의 결과 집합은 4명의 직원이 20000개 이상의 급여를 받고 있음을 보여줍니다.