SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL;
이름이 없는 채로 들어온 동물은 테이블에서 NULL로 표시되어 있다.
그러니까 NULL인 것만 찾으면 되는데, 이때 IS NULL을 사용해서 풀어야 한다.
SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NOT NULL
ORDER BY ANIMAL_ID;
이 문제는 앞서 풀었던 문제와 반대이다.
그러므로 IS NULL이 아니라 IS NOT NULL을 사용하면 된다.
그리고 ID가 오름차순 정렬되어야 한다고 했으므로 ORDER BY를 통해 정렬시켜준다.
SELECT ANIMAL_TYPE, IFNULL(NAME, 'No name') AS NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS ORDER BY ANIMAL_ID;
MSSQL을 주로 사용했기 때문에 ISNULL()을 통해서 문제를 풀었다.
하지만 MYSQL에서는 ISNULL()이 아니었다!
MYSQL에서 ISNULL()과 같은 역할을 하는 것은 바로 IFNULL() 이었다.
방법은 동일했다.
IFNULL(값1, 값2)
-> 값1이 NULL이면 값2를 출력해라.
문제에서 이름이 NULL이면 'No name'을 출력하라고 했기 때문에
IFNULL(NAME, 'No name') 이다.