2013-03-07 57 views
0

查看我的結果集,儘管我的條件我看到一個空白字段。MySQL LENGTH()> 0和NOT NULL沒有得到預期的結果

我想選擇:

SELECT column 
FROM table 
WHERE LENGTH(column) > 0 AND column IS NOT NULL 

我也嘗試:

WHERE LENGTH(column) <> 0 AND column IS NOT NULL 

,但是,我仍然看到一個空白的領域。

在我的選擇,我試圖檢查該字段的內容:

SELECT column, LENGTH(column), HEX(column) 

等等

但是,他們都拿出了爲0,看似空無一物,分別。

我在這裏錯過了什麼?

+0

你是說SELECT'LENGTH(column)'返回'0'? – 2013-03-07 22:26:54

+0

正確。 LENGTH(列)返回0 – Mailman 2013-03-07 22:36:57

+0

刪除我的答案,因爲你alreay嘗試它..你用什麼語言來檢索數據,你可以發佈代碼? – Oli 2013-03-07 22:39:58

回答

1
SELECT 
     .... 
    FROM contacts as co 
    JOIN clients as cl 
    ON co.contact_client = cl.client_oldid 
    -- this starts a where clause 
    WHERE cl.client_status = 2 
    -- ORDER BY ends a WHERE clause, and goes only for ordering: 
    order by 
    cl.client_name 
    AND LENGTH(co.contact_email) > 0 -- so, order by result of this 0 or 1 
    AND co.contact_email is not null -- then, order by result of this 0 or 1 
    AND TRIM(co.contact_EMAIL) <> ' -- then, order by result of this 0 or 1 
+0

...這是人們應該正確格式化查詢的原因之一... – Wrikken 2013-03-07 22:47:48

+0

嗯,我不覺得羞怯。感謝大家。 – Mailman 2013-03-07 22:51:31

相關問題