午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

MySql中 is Null段判斷無效和IFNULL()失效的解決方案

瀏覽:243日期:2023-10-01 17:12:01
MySql Null字段判斷,和IFNULL失效的處理

ps:(不想看過程就直接把你的sql外邊加上 一個(gè)select就好了)

select a,b,c from table group by a,b,c //這時(shí)候a,b,c 如果判斷null不管用select IFNULL(a,0),IFNULL(b,0),IFNULL(3,0) from (select a,b,c from table group by a,b,c ) //這樣就好啦

不說廢話舉個(gè)栗子,首先看一下這個(gè)很簡單的表

MySql中 is Null段判斷無效和IFNULL()失效的解決方案

當(dāng)我使用SQL語句通過PID進(jìn)行分組查詢,把列轉(zhuǎn)為行的時(shí)候結(jié)果展示是這樣的

MySql中 is Null段判斷無效和IFNULL()失效的解決方案

不管我怎么IFNULL(SID1,0) 或者 IF( SID1 is null,0,SID1)展示結(jié)果依舊是 NULL -.-!很無奈啊。

我的sql是這么寫的 沒有用過 MAX函數(shù)的可以直接忽略,只看IFNULL就好,很明顯我是加了IFNULL的。

SELECTPID,MAX(CASE WHEN SID = 1 THEN IFNULL(PNUM ,0) END) AS SID1,MAX(CASE WHEN SID = 2 THEN IFNULL(PNUM ,0) END) AS SID2,MAX(CASE WHEN SID = 3 THEN IFNULL(PNUM ,0) END) AS SID3FROM(SELECTPID,SUM(PNUM) PNUM,SIDFROMAGROUP BYPID) tempGROUP BYtemp.PID

但是我發(fā)現(xiàn)結(jié)果仍舊是NULL,然后我發(fā)現(xiàn),IFNULL(),is null 這些判斷只能判斷出來表中存在這個(gè)對應(yīng)的字段,并且為NULL才可以,而我的表中很明顯沒有這個(gè)字段,所以是判斷不出來的!

在你Select之后通過處理查詢出來的NULL mysql 的is null 和IFNULL() 是不識(shí)別的

說了這么多,那應(yīng)該怎么解決呢?

很簡單,沒有表就來一個(gè)唄!(新建一個(gè)Table?)想啥呢!

首先,去掉查詢中的IFNULL,沒有作用留著干嘛,

然后用一個(gè) select 語句把剛才的結(jié)果集當(dāng)做一個(gè)表來查詢,這樣就相當(dāng)于你查詢的表中存在這個(gè)字段,而且值為NULL

SELECTPID,IFNULL(SID1,0) SID1,IFNULL(SID2,0) SID2,IFNULL(SID3,0) SID3FROM(SELECTPID,MAX(CASE WHEN SID = 1 THEN PNUM END) AS SID1,MAX(CASE WHEN SID = 2 THEN PNUM END) AS SID2,MAX(CASE WHEN SID = 3 THEN PNUM END) AS SID3FROM(SELECTPID,SUM(PNUM) PNUM,SIDFROMAGROUP BYPID) tempGROUP BYtemp.PID) temp1

看吧,結(jié)果就出來了 哈哈哈哈哈~

MySql中 is Null段判斷無效和IFNULL()失效的解決方案

MySql使用 IFNULL() 遇到的問題關(guān)于 ifnull() 函數(shù)

IFNULL(a,b) c

如果a不為null,則 c 的值為 a

如果a為null,則 c 的值為 b

實(shí)際使用時(shí)遇到的問題

IFNULL(a,b) c

若 a 不是為null,而是為 ’ ’ 空字符串,則 c 的值為 a 空字符串。

而實(shí)際想要的結(jié)果是,a 為空字符串或者null, c 的值都為b。

解決方案

改用 if()函數(shù)

if(a =’’ or a is null,b,a) c

這段的意思是:如果 a 為 null 或者空字符串,c=b;否則 c=a;

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 少妇一区 | 亚洲a视频在线观看 | 亚洲性久久 | 亚洲国产精彩视频 | 久久国产成人精品av | 成人毛片视频免费看 | 亚洲男人天堂2024 | 亚欧洲精品在线视频免费观看 | 极品在线 | 亚洲私人影院 | 国产一区二区三区免费 | 91青草视频 | 国内精品99 | 午夜三级视频 | 黑人巨大精品欧美一区二区免费 | 一级片精品 | 伦hdwww日本bbw另类 | 精品国产乱码久久久 | 日韩欧美视频在线播放 | 欧美国产日韩综合 | 天堂一级片 | 日韩在线视频一区二区三区 | 亚洲精品a级 | 91插插插影库永久免费 | 波多野结衣一区二区三区高清 | 一区二区三区午夜 | 欧美色综合网 | 看免费毛片 | 超碰青娱乐 | 亚洲精品综合 | 亚洲 自拍 另类 欧美 丝袜 | 欧美在线免费 | 成人精品国产免费网站 | 色视频免费观看 | 日本国产视频 | 日韩国产第一页 | 国产一级一片免费播放 | 亚洲青涩在线 | 日韩a√ | 日韩另类视频 | 男女无遮挡做爰猛烈视频 |