国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

查詢表中滿足條件的記錄-WHERE子句_MySQL

來源:懂視網 責編:小采 時間:2020-11-09 18:39:10
文檔

查詢表中滿足條件的記錄-WHERE子句_MySQL

查詢表中滿足條件的記錄-WHERE子句_MySQL:bitsCN.com 查詢表中滿足條件的記錄-WHERE子句 在使用SQL語句進行查詢操作時,很多時候開發人員或者用戶并不是對數據表中的全部記錄感興趣,而只是想得到實際需要的數據記錄,這時就需要對查詢結果進行限制。在SQL語句中可以使用WHERE子句過濾掉不符合條件
推薦度:
導讀查詢表中滿足條件的記錄-WHERE子句_MySQL:bitsCN.com 查詢表中滿足條件的記錄-WHERE子句 在使用SQL語句進行查詢操作時,很多時候開發人員或者用戶并不是對數據表中的全部記錄感興趣,而只是想得到實際需要的數據記錄,這時就需要對查詢結果進行限制。在SQL語句中可以使用WHERE子句過濾掉不符合條件
bitsCN.com

查詢表中滿足條件的記錄-WHERE子句

在使用SQL語句進行查詢操作時,很多時候開發人員或者用戶并不是對數據表中的全部記錄感興趣,而只是想得到實際需要的數據記錄,這時就需要對查詢結果進行限制。在SQL語句中可以使用WHERE子句過濾掉不符合條件的記錄。

1.比較查詢

在WHERE子句中可以使用比較運算符對數值、字符值等信息進行查詢。比較運算符這里歸納為三類:算術比較運算符、BETWEEN…AND運算符和IN運算符。這一節將分別對對這三種比較運算符的查詢方法進行介紹。最后還將介紹WHERE子句中字符串和時間的比較方法。

算術比較運算符

SQL語句中的算術比較運算符主要包括=(等于)、>=(大于等于)、<=(小于等于)、>(大于)、<(小于)、!=(不等于)、 <>(不等于)、!>(不大于)、!<(不小于)。在SELECT語句的WHERE子句中可以使用算術比較運算符對指定列進行比較,其語法格式如下:

字段1 比較運算符 值

其中,字段1表示數據表中需要查詢的字段列名,字段1后面跟的是算術比較運算符,值表示的是指定列要比較的數值。使用比較運算符返回的結果是一個邏輯值。如果邏輯值為TRUE,則會返回查詢到的記錄,如果邏輯值為FALSE,則不會返回相應的查詢結果。

注意:在WHERE子句中比較的是數值型數據時,可以不使用單引號;如果是其他類型的數據(例如,字符串、時間型等)則必須使用單引號將其引住。另外,WHERE子句中比較運算符的左側和右側的數據類型必須是兼容的。

BETWEEN…AND運算符查詢指定條件范圍的記錄

BETWEEN…AND運算符可以用來查詢指定條件范圍的記錄。使用BETWEEN…AND運算符查詢時在BETWEEN運算符和AND運算符后面都需要給定一個值。其語法格式如下:

字段1 BETWEEN 值1 AND 值2

其中,字段1表示數據表中需要查詢的字段;值1為給定數值中較小的值;值2為給定數值中較大的值。其最終查詢的結果也包括值1和值2本身的值。

提示:SQL中,可以使用NOT BETWEEN AND運算符來排除一些記錄。例如要查詢教師信息表中年齡不在30~50之間的教師信息,就可以通過NOT BETWEEN AND來實現。

IN運算符查詢與列表匹配的記錄

IN運算符查詢用來查詢與列表匹配的記錄。使用IN運算符,可以將滿足列表中滿足指定表達式的任何一個值都查詢出來。IN運算符后的屬性值可以是一個,也可以有多個,多個屬性值之間需要要用逗號分隔。其語法格式如下:

字段1 IN(屬性值1, 屬性值2, 屬性值3…)

其中字段1表示數據表中需要查詢的字段;屬性值1, 屬性值2, 屬性值3分別表示需要查詢的值。屬性值既可以是數字類型的也可以是字符類型的值。如果屬性值是字符類型的值,則需要使用單引號將其引住。

字符串比較

在使用SQL語句進行比較查詢時,經常會遇到字符串比較問題。對字符串進行比較時,常用的數據庫都可以使用比較運算符對字符串進行比較,另外,在MySQL數據庫中還可以使用關鍵字BINARY對字符串進行二進制比較。

使用比較運算符對字符串進行比較時,比較運算符的左右兩側字符值應該用單引號引住。

SELECT 'mysql' = 'MySQL' 

如果希望比較的字符串區分大小寫,可以使用BINARY關鍵字對字符串進行二進制比較。使用BINARY關鍵字,會把一個字符串(數字)轉換成一個二進制對象。格式如下:

SELECT string1 比較運算符 BINARY string2 或SELECT BINARY string1 比較運算符 string2SELECT 'mysql' = BINARY 'MySQL' 

日期時間的比較

在WHERE子句中對日期值和時間進行比較時,要比較的日期和時間必須是數據庫服務器可以接受的字符串格式。例如,在學生信息表(T_student)中,學生的出生日期被設置為DATETIME日期類型的變量。要想在WHERE子句中對學生的出生日期值進行比較,可以使用單引號將該日期值引住。

2.邏輯查詢

在SQL語句中邏輯運算符主要包括AND、OR和NOT三種。其中AND運算符用來查詢同時滿足多個條件的記錄,OR運算符用來查詢多個條件中滿足其中任一個條件的記錄,NOT運算符用來查詢滿足相反條件的記錄。

使用AND運算符查詢同時滿足多個條件的記錄

在SQL的執行操作中,很多情況下,WHERE子句并不是只希望滿足一個條件,而是希望最終查詢的結果必須同時滿足多個條件(兩個或者兩個以上)。這個時候就需要使用AND運算符。其語法格式如下:

條件1 AND 條件2

其中條件1,條件2是在WHERE子句中進行查詢時需要滿足的條件。如果希望使用AND運算符在WHERE子句中連接多個條件??梢允褂孟旅娴恼Z法格式。

條件1 AND 條件2 AND條件3 …

這里使用兩個AND運算符來連接3個條件。多個AND運算符進行連接操作時,每一個AND運算符兩側的值必須都為TRUE,也就是說這些條件都同時被滿足的情況下,結果才會被顯示出來。

說明:在Microsoft SQL Server數據庫中,使用“&”符號代替AND運算符表示邏輯與運算。

使用OR運算符查詢滿足任一條件的記錄

在使用SQL進行查詢操作時,有些時只是希望查詢的結果中滿足多個條件中的任一條件即可。這個時候就需要使用OR運算符。使用OR運算符可以用來查詢滿足任一條件的記錄。其語法格式如下:

條件1 OR條件2

其中條件1,條件2是在WHERE子句中進行查詢時需要的條件。這兩個條件中,只要符合其中任何一個條件,則符合該條件的記錄就會被檢索出來。如果希望使用OR運算符在WHERE子句中連接多個條件??梢允褂孟旅娴恼Z法格式

條件1 OR條件2 OR條件3 …

這里使用兩個OR運算符來連接3個條件。多個OR運算符進行連接操作時,兩側的條件中任何一個條件為TRUE,滿足該條件的記錄就會被顯示出來。

說明:在Microsoft SQL Server數據庫中,使用“|”符號代替OR運算符表示邏輯與運算。

使用NOT運算符對查詢條件的布爾值求反

有些時候,需要查詢不滿足指定條件的記錄,這個時候就需要使用NOT運算符。NOT運算符對查詢條件的布爾值求反。

說明:在Microsoft SQL Server數據庫中,使用“~”符號代替NOT運算符表示邏輯與運算。

這3個邏輯運算符也可以放到一個SQL語句中混合使用。在這3個邏輯運算符中,NOT的優先級最高,AND的優先級要高于OR。為了便于理解,一般在混合使用這3個邏輯運算符時,可以使用括號將每一個部分括起來。

3.空值查詢

在使用SQL語句執行查詢操作時,還有一種是空值查詢。在數據表中,如果一個表的行屬性中不存在任何值的時候,也就是說該表的行屬性中沒有任何數據記錄。那么就將其稱之為空值。在SQL的查詢中,NULL可以用來表示空值的含義。在SQL語句中,可以使用IS NULL或者IS NOT NULL關鍵字來判斷空值。

4.使用LIKE操作符實現模糊查詢

在使用SQL語句進行查詢時,經常會遇到這樣一種情況,就是不能完全確定所需要查詢信息的完整條件,但是這些信息又具有某些明顯的特征。例如,想學習SQL語言,希望到圖書館中找一些相關的資料,但是又不知道有關SQL語言的書都有哪些,這個時候一般都會在圖書管理系統中輸入關鍵字SQL,這樣與SQL有關的所有書籍就都會查到了。這就是模糊查詢。在SQL語言中就提供了用于模糊查詢的關鍵字LIKE,它需要和通配符“%”和“_”配合使用。

在SQL語句中,通配符“_”表示匹配單個字符。即在查詢語句中,一個“_”只能表示匹配一個字符。

在SQL語句中,通配符“%”表示匹配0個或者多個字符。即一個“%”可以表示0個字符,也可以表示一個字符,也可以表示兩個或者更多的字符。

在使用SQL執行模糊查詢時,有時數據表某個字段中的字符值本身就含有“%”或者是“_”這兩個字符。開發人員希望在查詢時,將字符值本身就含有“%”或者是“_”兩個字符作為該字符的一部分查詢出來,這個時間就需要使用ESCAPE關鍵字對其進行轉義操作。使用ESCAPE關鍵字進行轉義操作步驟如下:

(1)在需要轉義的“%” 或者是“_”字符前加一個轉義符,該轉義符可以是一個任意字符。

(2)在ESCAPE關鍵字后制定該轉義符的名稱。

經過這兩個步驟之后,位于該轉義符之后的那個通配符(“%” 或者是“_”字符)就會被轉義為一個普通字符。

5.使用REGEXP關鍵字進行模式匹配(regular expression)

在MySQL數據庫中,還提供了一種更加靈活的模式匹配方法,就是使用REGEXP關鍵字對字符串進行模式匹配。使用REGEXP關鍵字對字符串進行模式匹配,只要是在被匹配的字符串中含有與匹配模版中相匹配的子串,就被認為是模式匹配。其返回值就為TRUE。

在MySQL數據庫中,使用REGEXP關鍵字對字符串進行模式匹配時,可以使用一些模式匹配修飾符對模式匹配進行測試。

^:用來匹配字符串的開始。

$:用來匹配字符串的結尾。

[]:在方括號中的任何字符都可以匹配。例如[abc]表示匹配方括號中的字符a、字符b或者是字符c。

-:連字符用來表示字符匹配的范圍。例如[a-z]表示匹配方括號中字符a到字符z中的任何一個字符。

+:表示用于匹配的該字符在被匹配的字符串中出現至少一次或者多次。

*:表示用于匹配的該字符在被匹配的字符串中出現零次或者多次。

():在圓括號中的內容將被看做一個整體。例如(abc),表示匹配樣式(abc)的字符串是abc。

{m}:其中整數m表示花括號前的字符串需要出現的次數。例如{abc}{2}表示匹配樣式{abc}{2}的字符串是abcabc。

另外,REGEXP還可以對字符串進行模式匹配測試。

SELECT 'agf' REGEXP '[a-d]+','banana' REGEXP '(ana){2}' 

bitsCN.com

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

查詢表中滿足條件的記錄-WHERE子句_MySQL

查詢表中滿足條件的記錄-WHERE子句_MySQL:bitsCN.com 查詢表中滿足條件的記錄-WHERE子句 在使用SQL語句進行查詢操作時,很多時候開發人員或者用戶并不是對數據表中的全部記錄感興趣,而只是想得到實際需要的數據記錄,這時就需要對查詢結果進行限制。在SQL語句中可以使用WHERE子句過濾掉不符合條件
推薦度:
標簽: 查詢 記錄 用戶
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产成人麻豆精品 | 熟年交尾五十路视频在线播放 | 亚洲欧美中文日韩综合 | 青青操国产视频 | 欧美日韩国产另类一区二区三区 | 欧美日韩ay在线观看 | 日韩欧美色 | 综合伊人久久在一二三区 | 国产日韩欧美在线 | 久久99精品久久久久久青青91 | 国产最新精品视频 | 日韩欧美国产中文 | 久久免费国产精品一区二区 | 日韩成人免费视频 | 国产精品久久久久久久毛片 | 国产一级久久久久久毛片 | 国产精品香蕉 | 亚洲欧洲第一页 | 免费国产视频 | 五月天婷婷综合 | 国产一级插插插 | 啪啪网址大全 | 国产短视频精品一区二区三区 | 国产成人精品一区二区免费视频 | 国产aⅴ一区二区三区 | 国内精品久久久久影院网站 | 亚洲精品高清国产一久久 | 亚洲欧美一区二区三区孕妇 | 国产精品成人麻豆专区 | 美女网站一区二区三区 | 欧美一区二区在线观看 | 中文字幕有码在线观看 | 国产91精品久久久久999 | 97热久久免费频精品99国产成人 | 日本一区二区三区免费观看 | 国产原创一区 | 亚洲色图 欧美 | 在线国产视频 | 欧美日本一本 | 欧美日韩亚洲一区 | 成人在线一区二区 |