SELECT*FROMemployee_tbl;+------+------+------------ -- +---------+|ID"/> SELECT*FROMemployee_tbl;+------+------+------------ -- +---------+|ID">

 >  기사  >  데이터 베이스  >  일치하는 행이 없을 때 MySQL SUM() 함수의 출력을 NULL 대신 0으로 사용자 정의하려면 어떻게 해야 합니까?

일치하는 행이 없을 때 MySQL SUM() 함수의 출력을 NULL 대신 0으로 사용자 정의하려면 어떻게 해야 합니까?

WBOY
WBOY앞으로
2023-09-06 13:21:11577검색

当没有匹配行时,如何将 MySQL SUM() 函数的输出自定义为 0 而不是 NULL?

일치하는 행이 없으면 SUM() 함수가 NULL을 반환한다는 것을 알고 있지만 때로는 NULL 대신 0을 반환하기를 원할 때도 있습니다. 이를 위해 MySQL COALESCE() 함수를 사용할 수 있습니다. 이 함수는 두 개의 매개변수를 허용하고 첫 번째 매개변수가 NULL이면 두 번째 매개변수를 반환하고, 그렇지 않으면 첫 번째 매개변수를 반환합니다. 위 개념을 이해하기 위해 다음과 같은 레코드가 있는 "employee_tbl" 테이블을 생각해 보십시오. -

mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
| id   | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
| 1    | John | 2007-01-24 |        250         |
| 2    | Ram  | 2007-05-27 |        220         |
| 3    | Jack | 2007-05-06 |        170         |
| 3    | Jack | 2007-04-06 |        100         |
| 4    | Jill | 2007-04-06 |        220         |
| 5    | Zara | 2007-06-06 |        300         |
| 5    | Zara | 2007-02-06 |        350         |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)

이제 SUM() 함수와 함께 COALESCE 함수를 사용하여 "Mohan"이 입력한 전체 페이지 수를 구하면 MySQL SUM() 함수는 0을 반환하고 "Mohan"이라는 이름이 "Name" 열에 없습니다 −

mysql> SELECT COALESCE(SUM(daily_typing_pages),0)AS ‘SUM(daily_typing_pages)’FROM employee_tbl WHERE Name = ‘Mohan’;
+-------------------------+
| SUM(daily_typing_pages) |
+-------------------------+
|           0             |
+-------------------------+
1 row in set (0.00 sec)

위 내용은 일치하는 행이 없을 때 MySQL SUM() 함수의 출력을 NULL 대신 0으로 사용자 정의하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제