SQL

SQL - 'Not given', NULL다루기

최 수빈 2024. 11. 26. 20:13

 

1. 제외해주기 -> 0으로 간주(null)

 

SELECT column_1, IF(column_2<>'Not given', value, null) null_column
FROM table
GROUP BY 1

 

Not given이라는 값을 가진 데이터가 아닌 경우에는 value를 그대로, Not gien이라는 값은 null로 바꿔준다.(0으로 간주됨)

 

IS NOT NULL을 사용하여 null 이 아닌 경우의 데이터만 조회할 수도 있다.

 

 

 

2. 다른 값을 대신 사용하기

 

사용할 수 없는 값 대신 다른 값을 대체해서 사용하는 방법

(대체 값의 예 :  평균값, 중앙값 등 대표값)

 

SELECT column_1, COALESCE(null_column, 대체값) "null제거"
FROM (SELECT column_1, IF(column_2<>'Not given', value, null) null_column
      FROM table) a
GROUP BY 1

 

 

 

 

 

 

* Not given은 정확히 없는 값일 때 컨셉으로 사용 (명시해줘야함), null은 값이 있는지 없는지 정확하진 않지만 일단 값은 없을 때 비워놓는 값(명시해주면 좋음)