IFNULL() 메서드의 개념을 사용하여 NULL을 0으로 처리합니다. 먼저 테이블을 생성하겠습니다 -
mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value1 int, Value2 int ); Query OK, 0 rows affected (0.64 sec)
삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -
mysql> insert into DemoTable(Value1,Value2) values(10,20); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable(Value1,Value2) values(null,null); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable(Value1,Value2) values(40,null); Query OK, 1 row affected (0.18 sec)
다음은 select 문을 사용하여 테이블의 모든 레코드를 표시하는 쿼리입니다 -
mysql> select *from DemoTable;
이것은 다음과 같은 출력을 생성합니다 -
+----+--------+--------+ | Id | Value1 | Value2 | +----+--------+--------+ | 1 | 10 | 20 | | 2 | NULL | NULL | | 3 | 40 | NULL | +----+--------+--------+ 3 rows in set (0.00 sec)
다음은 NULL을 0으로 처리하고 열을 추가하는 쿼리입니다 -
mysql> select ifnull(Value1,0)+ifnull(Value2,0) AS NULL_AS_ZERO from DemoTable;
이것은 모든 NULL 값이 더하기 위해 0으로 간주되었기 때문에 합계를 표시하는 다음 출력을 생성합니다 -
+--------------+ | NULL_AS_ZERO | +--------------+ | 30 | | 0 | | 40 | +--------------+ 3 rows in set (0.00 sec)