>  기사  >  데이터 베이스  >  mysql을 통해 NULL 데이터 메소드 변환

mysql을 통해 NULL 데이터 메소드 변환

jacklove
jacklove원래의
2018-06-08 17:39:571601검색

mysql을 사용하여 데이터베이스를 쿼리합니다. left Join을 실행하면 일부 관련 필드 내용이 NULL이므로 레코드 세트를 얻은 후 NULL 데이터를 변환해야 합니다.

이 글에서는 쿼리 시 직접 변환 처리를 수행하는 방법을 제공합니다. 획득한 레코드 세트는 변환할 필요가 없습니다.
mysql은 IFNULL 함수를 제공합니다.

IFNULL(expr1, expr2)

expr1이 NULL이 아니면 IFNULL()은 expr1을 반환하고, 그렇지 않으면 expr2를 반환합니다.

예:
user테이블 구조 및 데이터

+-----+---------------+| uid | lastlogintime |
+----+-----------+| id | name      |
+----+-----------+|  1 | Abby      |
|  2 | Daisy     ||  3 | Christine |
+----+-----------+


user_lastlogin 테이블 구조와 데이터

+-----+---------------+|   1 |    1488188120 ||   3 |    1488188131 |
+-----+---------------+

사용자 이름과 lastlogintime을 쿼리

mysql> select a.id,a.name,b.lastlogintime from user as a left join user_lastlogin as b on a.id=b.uid;
+----+-----------+---------------+| id | name      | lastlogintime |
+----+-----------+---------------+|  1 | Abby      |    1488188120 |
|  2 | Daisy     |          NULL ||  3 | Christine |    1488188131 |
+----+-----------+---------------+

id=2인 사용자는 로그인하지 않았기 때문에 user_lastlogin 테이블에 기록이 없습니다. 따라서 lastlogintime은 NULL입니다.

IFNULL을 사용하여 NULL을 0으로 변환

IFNULL(lastlogintime, 0)
mysql> select a.id,a.name,IFNULL(b.lastlogintime,0) as lastlogintime from user as a left join user_lastlogin as b on a.id=b.uid;
+----+-----------+---------------+| id | name      | lastlogintime |
+----+-----------+---------------+|  1 | Abby      |    1488188120 |
|  2 | Daisy     |             0 ||  3 | Christine |    1488188131 |
+----+-----------+---------------+

이 기사에서는 mysql에서 NULL 데이터를 변환하는 방법에 대해 설명합니다. 자세한 내용은 PHP 중국어 웹사이트를 참고하세요.

관련 권장 사항:

가변 매개변수를 사용하는 PHP 함수 정보

PHP를 통해 Sina API를 호출하여 짧은 링크를 생성하는 방법

mysql 그룹 내에서 다음과 같이 정렬하는 방법을 설명합니다. 그룹

위 내용은 mysql을 통해 NULL 데이터 메소드 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.