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를 통해 Sina API를 호출하여 짧은 링크를 생성하는 방법
mysql 그룹 내에서 다음과 같이 정렬하는 방법을 설명합니다. 그룹
위 내용은 mysql을 통해 NULL 데이터 메소드 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!