MySQL에서 공백과 null을 건너뛰려면 다음 구문을 사용하십시오.
select *from yourTableName where yourColumnName IS NOT NULL AND yourColumnName <> '';
먼저 테이블을 생성해 보겠습니다.
mysql> create table DemoTable (Id int, FirstName varchar(20)); Query OK, 0 rows affected (0.66 sec)
다음은 insert 명령어를 사용하여 테이블에 레코드를 삽입하는 쿼리입니다.
mysql> insert into DemoTable values(100,'Larry'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(101,''); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable values(102,'Chris'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable values(103,null); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable values(104,' '); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable values(105,'Robert'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable values(106,null); Query OK, 1 row affected (0.13 sec)
다음은 select 명령을 사용하여 테이블의 레코드를 표시하는 쿼리입니다.
mysql> select *from DemoTable;
빈 값과 NULL이 포함된 다음 출력이 생성됩니다.
+------+-----------+ | Id | FirstName | +------+-----------+ | 100 | Larry | | 101 | | | 102 | Chris | | 103 | NULL | | 104 | | | 105 | Robert | | 106 | NULL | +------+-----------+ 7 rows in set (0.00 sec)
다음은 MySQL에서 빈 값과 null을 건너뛰는 쿼리입니다.
mysql> select *from DemoTable where FirstName IS NOT NULL AND FirstName <> '';
그러면 다음과 같은 출력이 생성됩니다.
+------+-----------+ | Id | FirstName | +------+-----------+ | 100 | Larry | | 102 | Chris | | 105 | Robert | +------+-----------+ 3 rows in set (0.03 sec)