2014-04-13 5 views
0

테이블에 여러 개의 date 열이 있습니다. 그 중 일부는 null이고, 나머지는 유효한 날짜가 설정되어 있습니다.MySQL null 날짜가 쿼리에 의해 필터링되지 않음

SELECT * FROM table 

이 쿼리는 6 개 레코드를 반환 (그리고 올바른) :

이 쿼리는 17 개 레코드를 반환 (그리고 올바른)

SELECT * FROM table WHERE selected_column IS NULL 

이 쿼리 17 개 레코드를 반환 (IT 및 틀림 없음, 분명히) :

SELECT * FROM table WHERE selected_column IS NOT NULL 

설명이 있습니까?

편집은 은 CREATE 테이블 한 Statment : NULL 값

CREATE TABLE `contracts` ( 
`id` bigint(20) NOT NULL AUTO_INCREMENT, 
`start_date` date NOT NULL, 
`end_date` date NOT NULL, 
PRIMARY KEY (`id`) 
) ENGINE=MyISAM AUTO_INCREMENT=12323 DEFAULT CHARSET=utf8 
+3

어떤 데이터 유형이'selected_column'입니까? 'create table' 문을 보여주십시오. http://sqlfiddle.com에 자체 테스트 케이스를 게시 할 수 있습니까? –

+0

데이터베이스에 데이터를 게시하거나 – CMPS

+0

이상의 쿼리를 작성할 수 있습니까? '날짜'데이터 유형입니다. 테이블 생성은 이제 – yossi

답변

0

열이 WHERE 절에 나열되지 않습니다. 유일한 설명 인 것 같습니다.

시도 Select selected_column from table where selected_column is not NULL

관련 문제