第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

MySQL SELECT只是非空值

MySQL SELECT只是非空值

白衣染霜花 2019-08-16 14:36:58
MySQL SELECT只是非空值是否可以執(zhí)行只接受NOT NULL值的select語句?現(xiàn)在我正在使用這個(gè):SELECT * FROM table然后我必須用php循環(huán)過濾掉空值。有辦法嗎?SELECT * (that are NOT NULL) FROM table?現(xiàn)在,當(dāng)我選擇*我得到val1,val2,val3,null,val4,val5,null,null等....但我只是想得到我的結(jié)果中不為null的值。這可能沒有過濾循環(huán)嗎?
查看完整描述

3 回答

?
一只名叫tom的貓

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊

你應(yīng)該用IS NOT NULL。(比較操作符=<>兩個(gè)給UNKNOWNNULL于表達(dá)的任一側(cè))。

SELECT * FROM table WHERE YourColumn IS NOT NULL;

為了完整起見,我會提到在MySQL中你也可以否定null安全等式運(yùn)算符,但這不是標(biāo)準(zhǔn)的SQL。

SELECT *FROM table WHERE NOT (YourColumn <=> NULL);

編輯以反映評論。聽起來您的桌子可能不是第一種正常形式,在這種情況下,更改結(jié)構(gòu)可能會使您的任務(wù)更容易。其他幾種做法雖然......

SELECT val1 AS valFROM  your_tableWHERE val1 IS NOT NULLUNION ALLSELECT val2 
FROM  your_tableWHERE val2 IS NOT NULL/*And so on for all your columns*/

上述缺點(diǎn)是它為每列掃描多次一次。下面可能會避免這種情況,但我還沒有在MySQL中對此進(jìn)行過測試。

SELECT CASE idx         WHEN 1 THEN val1         WHEN 2 THEN val2       END AS valFROM   your_table        /*CROSS JOIN*/
       JOIN (SELECT 1 AS idx                   UNION ALL
                   SELECT 2) tHAVING val IS NOT NULL  /*Can reference alias in Having in MySQL*/


查看完整回答
反對 回復(fù) 2019-08-16
?
浮云間

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超4個(gè)贊


您可以篩選出特定列中包含NULL值的行:


SELECT col1, col2, ..., coln

FROM yourtable

WHERE somecolumn IS NOT NULL

如果要過濾掉任何列中包含null的行,請嘗試以下操作:


SELECT col1, col2, ..., coln

FROM yourtable

WHERE col1 IS NOT NULL

AND col2 IS NOT NULL

-- ...

AND coln IS NOT NULL

更新:根據(jù)您的意見,也許你想要這個(gè)?


SELECT * FROM

(

    SELECT col1 AS col FROM yourtable

    UNION

    SELECT col2 AS col FROM yourtable

    UNION

    -- ...

    UNION

    SELECT coln AS col FROM yourtable

) T1

WHERE col IS NOT NULL

我對Martin說,如果你需要這樣做,那么你應(yīng)該改變你的數(shù)據(jù)庫設(shè)計(jì)。


查看完整回答
反對 回復(fù) 2019-08-16
?
慕尼黑5688855

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超2個(gè)贊

Select * from your_table 
WHERE col1 and col2 and col3 and col4 and col5 IS NOT NULL;

這種方法的唯一缺點(diǎn)是你只能比較5列,之后結(jié)果總是假的,所以我只比較可以的字段NULL。


查看完整回答
反對 回復(fù) 2019-08-16
  • 3 回答
  • 0 關(guān)注
  • 1321 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號