只用IN操作符不對頭,IN的邏輯就是“或”,number IN ('1','4','6','13')就相當(dāng)于number='1' or number='4' or number='6' or number='13',而你的number中沒有13(10個值里面沒13),則或上等于13的,過濾效果就等同于沒加這個條件,于是查出3條記錄。
創(chuàng)新互聯(lián)公司主要為客戶提供服務(wù)項(xiàng)目涵蓋了網(wǎng)頁視覺設(shè)計、VI標(biāo)志設(shè)計、成都全網(wǎng)營銷推廣、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式網(wǎng)站建設(shè)、手機(jī)網(wǎng)站制作、微商城、網(wǎng)站托管及成都網(wǎng)站改版、WEB系統(tǒng)開發(fā)、域名注冊、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計、SEO優(yōu)化排名。設(shè)計、前端、后端三個建站步驟的完善服務(wù)體系。一人跟蹤測試的建站服務(wù)標(biāo)準(zhǔn)。已經(jīng)為木包裝箱行業(yè)客戶提供了網(wǎng)站營銷服務(wù)。
按你的意圖,似乎是應(yīng)該查出0條記錄,大概需要寫成如下命令:
select number from ABC
where number IN ('1','4','6','13')
and exists( select 1 from ABC where number='1' )
and exists( select 1 from ABC where number='4' )
and exists( select 1 from ABC where number='6' )
and exists( select 1 from ABC where number='13' )
mysql中有4類運(yùn)算符,它們是:
算術(shù)運(yùn)算符
比較運(yùn)算符
邏輯運(yùn)算符
位操作運(yùn)算符
算術(shù)操作符
算術(shù)操作符是SQL中最基本的操作運(yùn)算符,主要有一下幾種運(yùn)算符:
+(加)、 -(減)、 *(乘)、 /(除)、 %(求余或者模)
比較運(yùn)算符
一個比較運(yùn)算符的結(jié)果總是1,0或者是NULL。MySQL中的比較運(yùn)算符有:
=、=、 (!=)、=、=、、IS NULL、IS NOT NULL、LEAST、GREATEST、BETWEEN . . . AND. . . 、ISNULL、IN、NOT IN、LIKE、REGEXP
邏輯運(yùn)算符
邏輯運(yùn)算符的求值所得結(jié)果均為TRUE、FALSE或NULL。
邏輯運(yùn)算符有:
NOT 或者 !
AND 或者
OR 或者 ||
XOR(異或)
位運(yùn)算符
位運(yùn)算符是用來對二進(jìn)制字節(jié)中的位進(jìn)行測試、移位或者測試處理。位運(yùn)算符有:
位或(|)
位與()
位異或(^ )
位左移()
位右移()
位取反(~)
MySQL的邏輯分層只有四層
從客戶端發(fā)起請求到服務(wù)端
client ==連接層 ==服務(wù)層==引擎層==存儲層 server
連接層:連接與線程處理,這一層并不是MySQL獨(dú)有,一般的基于C/S架構(gòu)的都有類似組件,比如連接處理、授權(quán)認(rèn)證、安全等。
服務(wù)層:包括緩存查詢、解析器、優(yōu)化器,這一部分是MySQL核心功能,包括解析、優(yōu)化SQL語句,查詢緩存目錄,內(nèi)置函數(shù)(日期、時間、加密等函數(shù))的實(shí)現(xiàn)。
引擎層:負(fù)責(zé)數(shù)據(jù)存儲,存儲引擎的不同,存儲方式、數(shù)據(jù)格式、提取方式等都不相同,這一部分也是很大影響數(shù)據(jù)存儲與提取的性能的;對存儲層的抽象。
存儲層:存儲數(shù)據(jù),文件系統(tǒng)。
Mysql存儲過程
1.創(chuàng)建存儲過程語法(格式)
解析:
2.存儲過程內(nèi)具體語法與邏輯
A.定義變量語法:
注:可以在參數(shù)類型后面加 DEFAULT NULL; 來設(shè)置初始值。
B.變量賦值:
方式1(直接對變量進(jìn)行賦值):
方式2(sql查詢的結(jié)果直接賦值給變量):
方式3(sql查詢的結(jié)果直接賦值給多個變量):
c.邏輯判斷:
D.游標(biāo),(LOOP)循環(huán):
3.存儲過程的調(diào)用
4.刪除存儲過程
5.注意事項(xiàng)
存儲過程中的分號(;)很重要,盡量不要省略。