상당히 둘 다 ISNULL() 함수 및 IS NULL 연산자는 차이가 없으며 몇 가지 일반적인 동작을 공유합니다. 우리가 볼 수 있는 유일한 차이점은 구문에 있습니다. ISNULL() 함수는 표현식을 인수로 갖는 반면 IS NULL 비교 연산자의 왼쪽에 표현식이 있습니다. 그렇지 않으면 표현식이 NULL이면 둘 다 1을 리턴하고 표현식이 NULL이 아니면 0을 리턴합니다. 다음 예는 위의 개념을 보여줍니다 -
mysql> Select 1 IS NULL; +-----------+ | 1 IS NULL | +-----------+ | 0 | +-----------+ 1 row in set (0.00 sec) mysql> Select ISNULL(1); +-----------+ | ISNULL(1) | +-----------+ | 0 | +-----------+ 1 row in set (0.00 sec) mysql> Select ISNULL(1/0); +-------------+ | ISNULL(1/0) | +-------------+ | 1 | +-------------+ 1 row in set (0.00 sec) mysql> Select 1/0 IS NULL; +-------------+ | 1/0 IS NULL | +-------------+ | 1 | +-------------+ 1 row in set (0.00 sec) mysql> Select * from Employee WHERE Salary IS NULL; +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+-------+--------+ 2 rows in set (0.00 sec) mysql> Select * from Employee WHERE ISNULL(Salary); +----+-------+--------+ | ID | Name | Salary | +----+-------+--------+ | 7 | Aryan | NULL | | 8 | Vinay | NULL | +----+-------+--------+ 2 rows in set (0.00 sec)