2011-11-28 2 views
2

어떻게 내가 조건"IS NULL"조건을 사용하지 않고 데이터베이스에서 "NULL"레코드 가져 오기 ...?

"WHERE field_name IS NULL OR field_name = 'NULL' " 

이하로 사용하지 않고 테이블의 모든 NULL 값의 기록을 어떻게해야합니까이 문제를 해결하기 위해 어떤 MySQL의 붙박이 기능이 있나요 ..?

실제로 이것은 내가 INTERVIEW for MYSQL에서 직면 한 질문입니다. 나는 그 해결책을 알고 싶어합니다.

정말 감사드립니다. 제발 도와주세요.

감사합니다.

+0

정확하게 확실하지 무엇을 ' 'ifnull()'문을 찾지 않는 한 다시 묻습니다. http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html#function_ifnull –

+0

field_name = NULL로 NULL 값을 확인할 수 없다고 생각합니다. 'NULL'은 값이 NULL 인 문자열을 검사합니다. , NULL 값이 아닙니다. – gprathour

+0

@GP Singh : 예 .. 빈 값으로 검색 할 문자열 "NULL"값을 찾으려고합니다. – Chandresh

답변

2

select COALESCE(colname,0) from table where 
colname != coalesc(colname,0); 
+0

ok 고맙습니다. 빠른 응답을 위해 감사합니다. 나는 그것을 밖으로 체크하고 곧 다시 당신에게 돌아갈 것이다. – Chandresh

+0

이것은 약간 잘못된 것처럼 보입니다. 여러분은'colname! = coalesc (colname, 0)'을 비교해야합니다. – ajreal

+0

예 bcz 지금 시도하십시오. –

0

당신이 Join과가 null의 안전과 동일 <=>

SELECT a.* 
FROM table a 
     JOIN (SELECT NULL AS v) b 
     ON a.field_name <=> b.v 
0

당신은 또한 시도 할 필요 시도 할 수 있습니다이

SELECT * 
FROM test_null 
WHERE id NOT IN (
    SELECT id 
    FROM test_null 
    WHERE !colval 
) 
관련 문제