校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識(shí)庫 > 淺談mysql返回Boolean類型的幾種情況

淺談mysql返回Boolean類型的幾種情況

熱門標(biāo)簽:大豐地圖標(biāo)注app 北京金倫外呼系統(tǒng) 催天下外呼系統(tǒng) 武漢電銷機(jī)器人電話 400電話變更申請(qǐng) 呂梁外呼系統(tǒng) html地圖標(biāo)注并導(dǎo)航 400電話辦理服務(wù)價(jià)格最實(shí)惠 南太平洋地圖標(biāo)注

mysql返回Boolean類型

第一種情況,直接返回

select id='22aa' from mytest where age=202  返回1 可封裝為true
select count(*)=1 from mytest where age=202  返回1 可封裝為true
select count(*)=0 from mytest where age=202  返回0 可封裝為false
select count(*)3 from mytest where age=202  返回1 可封裝為true
select count(*)=1 from mytest where age=202  返回1 可封裝為true
select name="aa" from mytest where age=10  當(dāng)name為null時(shí),sql不會(huì)報(bào)錯(cuò),返回結(jié)果也為nul,參照第二種情況的sql 3 代碼會(huì)報(bào)錯(cuò)

總結(jié):

這種情況類似于java中的判斷語句。只是java中=是賦值的意思,所以用了==來做判斷,而mysql中賦值用set,判斷就直接用=。

第二種情況,返回0或者1也能達(dá)到目的

select enable from mytest where age=202  返回1  可封裝為true
select count(*) from mytest  返回4  可封裝為Boolean類型,但為false
select enable from mytest where age=201 返回null  不可封裝為Boolean類型,代碼會(huì)直接報(bào)錯(cuò)
select id from mytest where age=202   返回'22aa'   可封裝為Boolean類型,但為false
select id from mytest where age=202   返回'true'   可封裝為Boolean類型,但為true
select id from mytest where age=202   返回'false'   可封裝為Boolean類型,false
//特殊情況
select * from mytest  報(bào)錯(cuò)Expected one result (or null) to be returned by selectOne(), but found: 4
select * from mytest where age=202  返回一組數(shù)據(jù)false 2019-08-28 202 15 1 ,可以封裝為false
select * from mytest where age=202  返回一組數(shù)據(jù)true 2019-08-28 202 15 1 ,可以封裝為true
select * from mytest where age=202  返回一組數(shù)據(jù)aaaa2019-08-28 202 15 1 ,可以封裝為false

總結(jié):

Mybatis是根據(jù)查詢到的記錄數(shù)進(jìn)行轉(zhuǎn)換的(1=true,0=false)

需要注意的地方:如果查詢到多條記錄(大于1),返回的卻是false, 這時(shí)就與我們的期望的剛好相反。這里,可以換其它方法,可以通過返回記錄數(shù),進(jìn)行判斷,也可以保證記錄在數(shù)據(jù)庫是唯一的。也可以直接用第一種情況解決。

根據(jù)第4、5、6條sql語句的測(cè)試,如果字符串是"true",就可以封裝為true,如果為"false"就可以封裝為false,其他情的字符串都為false。

(猜測(cè),并不準(zhǔn)確,需要到mysql官網(wǎng)上來查,如果返回的字段是字符串,將其轉(zhuǎn)為Boolean時(shí)是按什么規(guī)則轉(zhuǎn)換的,猜測(cè)是類似于java中的字符串轉(zhuǎn)Boolean方法:Boolean.valueOf(“aaa”) //false,該方法如下)

至于8、9、10的sql返回一組,而接受數(shù)據(jù)的只要一個(gè)時(shí)的情況,為什么就取了id的值來封裝,有待繼續(xù)研究。

MySQL Boolean類型的坑

MySQL中,Boolean只是 tinyint(1) 的別名,也就是說,MySQL中并沒有真正的bool類型。而SQLAlchemy生成SQL的時(shí)候并沒有檢測(cè)到 這一點(diǎn),這就導(dǎo)致一個(gè)問題,當(dāng)使用 bool 類型作為查詢條件時(shí),用不上索引,從而導(dǎo)致掃表的行為:

> SELECT COUNT(*) FROM message WHERE message.is_national = 1 AND message.updated_at > '2020-01-01 00:00:00' AND message.deleted_at IS NULL;
+----------+
| COUNT(*) |
+----------+
| 0        |
+----------+
1 row in set
Time: 0.018s
> SELECT COUNT(*) FROM message WHERE message.is_national is true AND message.updated_at > '2020-01-01 00:00:00' AND message.deleted_at IS NULL;
+----------+
| COUNT(*) |
+----------+
| 0        |
+----------+
1 row in set
Time: 2.162s

注意觀察第一行和第二行的時(shí)間,很明顯第二行沒有用上索引,我們來看看 EXPLAIN 的結(jié)果便知道了:

> EXPLAIN SELECT COUNT(*) FROM message WHERE message.is_national = 1 AND message.updated_at > '2020-01-01 00:00:00' AND message.de
        leted_at IS NULL;
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
| 1  | SIMPLE | message | ref  | ix_message_updated_at,idx_updated_at_is_national,ix_message_is_national | ix_message_is_national | 1 | const | 1 | Using where |

> EXPLAIN SELECT COUNT(*) FROM message WHERE message.is_national is true AND message.updated_at > '2020-01-01 00:00:00' AND messag
        e.deleted_at IS NULL;
| id | select_type | table   | type | possible_keys | key    | key_len | ref    | rows    | Extra |
| 1  | SIMPLE | message | ALL  | ix_message_updated_at,idx_updated_at_is_national | null> | null>  | null> | 一個(gè)很大的數(shù)字 | Using whe
re |

對(duì)此,我只想說,太坑了!

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Mysql 設(shè)置boolean類型的操作
  • mybatis 連接mysql數(shù)據(jù)庫 tinyint 為boolean類型詳解
  • MySQL中的布爾值,怎么存儲(chǔ)false或true

標(biāo)簽:徐州 迪慶 西寧 龍巖 南充 麗水 無錫 自貢

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談mysql返回Boolean類型的幾種情況》,本文關(guān)鍵詞  淺談,mysql,返回,Boolean,類型,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《淺談mysql返回Boolean類型的幾種情況》相關(guān)的同類信息!
  • 本頁收集關(guān)于淺談mysql返回Boolean類型的幾種情況的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    精品亚洲欧美一区| 国产精品久久久久永久免费观看 | 日韩午夜激情电影| 一区二区在线电影| 欧美日韩激情一区二区三区| 性做久久久久久久久| 欧美一级久久久| 成人一区二区三区中文字幕| 中文字幕一区二区三区在线观看| 国产伦精品一区二区三区免费迷| 国产精品久久久一本精品| 91麻豆国产自产在线观看| 日韩国产一二三区| 国产精品久久久久精k8| 欧美一个色资源| 色呦呦网站一区| 国产99久久久久| 亚洲成人免费看| 亚洲乱码一区二区三区在线观看| 欧美三级在线看| 99视频精品全部免费在线| 日本免费新一区视频| 亚洲一级在线观看| 中文字幕精品一区二区精品绿巨人 | av电影在线观看一区| 精品亚洲欧美一区| 国产真实乱子伦精品视频| 性感美女久久精品| 亚洲妇女屁股眼交7| **性色生活片久久毛片| 国产精品热久久久久夜色精品三区 | 91精品国产欧美日韩| 欧美丝袜第三区| 欧美区视频在线观看| 欧美日韩国产不卡| 色狠狠av一区二区三区| 国产成人av一区二区三区在线观看| 悠悠色在线精品| 一区二区三区不卡视频在线观看| 国产精品传媒视频| 最新国产成人在线观看| 中日韩av电影| 一级特黄大欧美久久久| 亚洲国产成人porn| 精品一区二区三区在线观看| 国产一区二区三区在线看麻豆| 成人一级视频在线观看| 99久久精品国产精品久久| 91丨九色丨尤物| 精品视频1区2区| 国产欧美精品国产国产专区| 一区二区三区四区在线免费观看| 婷婷一区二区三区| 成人精品视频.| 欧美高清视频一二三区 | 亚洲国产精品久久久久秋霞影院| 久久av老司机精品网站导航| 欧美一区二区福利在线| 久久免费午夜影院| 丝袜诱惑制服诱惑色一区在线观看| 国产一区二区三区国产| 欧美一区二区视频观看视频| 国产精品欧美经典| 国产成人av福利| 日韩欧美精品三级| 蜜臀久久99精品久久久久久9 | 久久久久97国产精华液好用吗| 亚洲欧美日韩国产综合| 成人免费毛片片v| 久久精品视频免费观看| 国产一区999| 精品国产91九色蝌蚪| 激情图区综合网| 2014亚洲片线观看视频免费| 男女男精品视频网| 日韩无一区二区| 免费在线观看视频一区| 日韩欧美在线影院| 美腿丝袜在线亚洲一区| 91精品久久久久久久91蜜桃| 麻豆极品一区二区三区| 精品sm捆绑视频| 国产99精品国产| 亚洲欧美激情小说另类| 欧美tk—视频vk| www.欧美.com| 亚洲国产精品自拍| 久久久精品蜜桃| 91麻豆精品一区二区三区| 偷窥少妇高潮呻吟av久久免费| 精品国内片67194| 色综合天天综合在线视频| 三级欧美在线一区| 国产精品久久久久天堂| 7777精品伊人久久久大香线蕉完整版 | 九色综合国产一区二区三区| 国产精品久久久久久福利一牛影视 | 日本道免费精品一区二区三区| 亚洲欧美日韩在线| 国产亚洲一区二区三区| 7777精品伊人久久久大香线蕉| 国产电影一区二区三区| 秋霞av亚洲一区二区三| 一卡二卡三卡日韩欧美| 亚洲视频一二区| 久久久久九九视频| 日韩午夜中文字幕| 欧美高清视频一二三区 | 成人激情免费视频| 国产真实乱偷精品视频免| 亚洲大尺度视频在线观看| 亚洲免费观看高清完整版在线| 国产日本亚洲高清| 日本一二三四高清不卡| 久久综合色天天久久综合图片| 欧美伦理电影网| 日韩欧美一区在线| 欧美不卡视频一区| 精品国产一区久久| 国产网站一区二区| 1024精品合集| 日本亚洲免费观看| 精品一区二区免费看| 国产精品99久久久久久有的能看| 国产中文字幕一区| 91同城在线观看| 欧美婷婷六月丁香综合色| 欧美日韩国产大片| 久久久一区二区| 亚洲影视资源网| 精品一区二区三区视频在线观看 | 国产精品乱人伦中文| 亚洲欧洲美洲综合色网| 亚洲一区二区不卡免费| 久久99精品视频| 99久久精品情趣| 精品理论电影在线观看 | 国产精品国产三级国产普通话蜜臀 | 久久精品人人做人人综合 | 亚洲欧美另类久久久精品2019| 午夜激情综合网| 91在线精品一区二区| 欧美日本一道本在线视频| 亚洲国产岛国毛片在线| 日韩精品福利网| 91浏览器在线视频| 国产精品全国免费观看高清| 日韩精品久久理论片| 91免费版pro下载短视频| 欧美v亚洲v综合ⅴ国产v| 亚洲综合视频在线| 91污在线观看| 亚洲免费伊人电影| 色天使久久综合网天天| 日韩理论在线观看| 99riav一区二区三区| 精品粉嫩aⅴ一区二区三区四区| 亚洲一区二区三区精品在线| 色婷婷av久久久久久久| 亚洲精选一二三| 色婷婷综合激情| 亚洲综合成人在线| 56国语精品自产拍在线观看| 午夜视黄欧洲亚洲| 日韩精品在线一区| 国产老女人精品毛片久久| 久久综合久久综合亚洲| 欧美一区二区三区视频在线观看| 一区二区三区在线观看网站| 一本高清dvd不卡在线观看| 亚洲免费看黄网站| 制服丝袜日韩国产| 激情六月婷婷综合| 国产欧美日韩不卡| 在线观看日韩电影| 国内精品免费在线观看| 亚洲欧美日韩国产手机在线| 日韩一区二区三区电影| 成人做爰69片免费看网站| 亚洲制服丝袜av| 久久久国产精品麻豆| 欧美日本不卡视频| 成人免费看视频| 黑人巨大精品欧美黑白配亚洲| 亚洲欧洲在线观看av| www日韩大片| 欧美理论电影在线| 不卡的看片网站| 国内外成人在线| 日韩精品电影在线| 亚洲高清免费在线| 日韩毛片高清在线播放| 久久综合国产精品| 综合久久给合久久狠狠狠97色| 成人h动漫精品| 国产成人精品www牛牛影视| 久久99热狠狠色一区二区| 免费视频一区二区| 免费观看在线色综合| 久久福利资源站|