(三) 使用WHERE子句設(shè)置查詢(xún)條件
WHERE子句設(shè)置查詢(xún)條件,過(guò)濾掉不需要的數(shù)據(jù)行。例如下面語(yǔ)句查詢(xún)年齡大于20的數(shù)據(jù):
SELECT *
FROM usertable
WHERE age>20
WHERE子句可包括各種條件運(yùn)算符:
比較運(yùn)算符(大小比較):>、>=、=、<、<=、<>、!>、!<
范圍運(yùn)算符(表達(dá)式值是否在指定的范圍):BETWEEN…AND…
NOT BETWEEN…AND…
列表運(yùn)算符(判斷表達(dá)式是否為列表中的指定項(xiàng)):IN (項(xiàng)1,項(xiàng)2……)
NOT IN (項(xiàng)1,項(xiàng)2……)
模式匹配符(判斷值是否與指定的字符通配格式相符):LIKE、NOT LIKE
空值判斷符(判斷表達(dá)式是否為空):IS NULL、NOT IS NULL
邏輯運(yùn)算符(用于多條件的邏輯連接):NOT、AND、OR
1、范圍運(yùn)算符例:age BETWEEN 10 AND 30相當(dāng)于age>=10 AND age<=30
2、列表運(yùn)算符例:country IN ('Germany','China')
3、模式匹配符例:常用于模糊查找,它判斷列值是否與指定的字符串格式相匹配。可用于char、varchar、text、ntext、datetime和smalldatetime等類(lèi)型查詢(xún)。
可使用以下通配字符:
百分號(hào)%:可匹配任意類(lèi)型和長(zhǎng)度的字符,如果是中文,請(qǐng)使用兩個(gè)百分號(hào)即%%。
下劃線(xiàn)_:匹配單個(gè)任意字符,它常用來(lái)限制表達(dá)式的字符長(zhǎng)度。
方括號(hào)[]:指定一個(gè)字符、字符串或范圍,要求所匹配對(duì)象為它們中的任一個(gè)。[^]:其取值也[] 相同,但它要求所匹配對(duì)象為指定字符以外的任一個(gè)字符。
例如:
限制以Publishing結(jié)尾,使用LIKE '%Publishing'
限制以A開(kāi)頭:LIKE '[A]%'
限制以A開(kāi)頭外:LIKE '[^A]%'
4、空值判斷符例WHERE age IS NULL
5、邏輯運(yùn)算符:優(yōu)先級(jí)為NOT、AND、OR
(四)查詢(xún)結(jié)果排序
使用ORDER BY子句對(duì)查詢(xún)返回的結(jié)果按一列或多列排序。ORDER BY子句的語(yǔ)法格式為:
ORDER BY {column_name [ASC|DESC]} [,…n]
其中ASC表示升序,為默認(rèn)值,DESC為降序。ORDER BY不能按ntext、text和image數(shù)據(jù)類(lèi)型進(jìn)行排序。
例如:
SELECT *
FROM usertable
ORDER BY age desc,userid ASC
另外,可以根據(jù)表達(dá)式進(jìn)行排序。
相關(guān)推薦:支招:全國(guó)計(jì)算機(jī)等級(jí)考試上機(jī)考試應(yīng)試技巧北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |