티스토리 뷰

SQL/MySQL

[MySql] NULL Function

A형개발자 2016. 10. 12. 22:54

MySQL IFNULL

테이블의 컬럼값이 NULL 일 경우 Default 값을 넣어 주어야 할 경우가 생긴다. 데이터가 필요한 곳에서는 실제 INT 값을 기대 하고 있을때 NULL이 넘어온다면 골치가 아플 것이다. 기대하고 데이터 타입이 있다면 보내주는 쪽에서 데이터 타입에 맞춰 보내주는 것이 좋을 것이다. My Sql 의 경우엔 IFNULL('Data','Default Value') 를 사용한다. 

문법

IFNULL(expression_1,expression_2);

예제

SELECT
	cat.hashTag, cat.displayName, IFNULL(tags.blogCnt,0) as blogCnt
FROM
	umejintan.blog_hashtagsCategory cat
        LEFT JOIN umejintan.blog_hashtags tags ON cat.hashTag = tags.hashTag
WHERE
	cat.lang = p_lang
ORDER By 
	orderID;

Description

두 테이블을 조인하여 사용하다 보면 한쪽에 데이터가 없는 경우가 생긴다. 위의 예제와 같이 Category 는 존재 하지만 실제로 데이터가 없으면 NULL를 리턴하게 된다. 전체 카테고리는 표시해야 하는데 데이터가 없는 경우엔 NULL 이 아닌 Default 로 0를 설정하도록 한다.   


'SQL > MySQL' 카테고리의 다른 글

[MySql] Temporary Table 생성  (0) 2016.10.12
[MySql] Select 된 Rowcount 를 얻는 방법(MSSql의 @@Rowcount)  (0) 2016.08.05
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함