查詢
1.Like
1) %通配符
包含零個(gè)或多個(gè)字符的任意字符串
USE ?db_2008
select * from Employee
WHERE Name like‘王%’
2) _下劃線
匹配任意單個(gè)字符
USE ?db_2008
select * from Employee
WHERE Name like‘王_’
3)[ ]通配符
通配符表示查詢一定的范圍內(nèi)的任意單個(gè)字符,它包含兩端的數(shù)據(jù)
USE ?db_2008
select * from Employee
WHERE Age like‘2[2-4]’
4) ^通配符
查詢不在一定范圍內(nèi)的任意單個(gè)字符,它包含兩端的數(shù)據(jù)
USE ?db_2008
select * from Employee
WHERE Age like‘2[^2-4]’
2.BETWEEN ?AND
USE ?db_2008
select * from Employee
WHERE Age BETWEEN 22 AND 24
USE ?db_2008
select * from Employee
WHERE Age Not ?BETWEEN 22 AND 24
3.IS (NOT) NULL
WHERE 語句中不能使用比較符(=)來對空值來判斷,只能使用IS (NOT) NULL
用來對空值進(jìn)行查詢
USE ?db_2008
select * from Employee
WHERE Sex IS NULL
USE ?db_2008
select * from Employee
WHERE Sex IS NOT NULL
4.IN
指定列表中的條件,確定指定值是否與子查詢或列表中的值是否匹配
USE ?db_2008
select * from Employee
WHERE ?ID ??IN (‘001’,’002’,’003’)
USE ?db_2008
select * from Employee
WHERE ?ID ??NOT ?IN (‘001’,’002’,’003’)
5.ALL、SOME、ANY
1)ALL比較標(biāo)量值和單列集中的值,與比較運(yùn)算符和子查詢一起使用。 >ALL 表示大于條件的每一個(gè)值,大于最大值
USE ?db_2008
select * from Employee
WHERE ?Age >ALL
(
Select Age from employee
Where Name IN (‘王子行’,’張芝庭’)
)
2)SOME、ANY:比較標(biāo)量的值和單列集合的值,SOME、ANY是等效的,與比較運(yùn)算符和子查詢一起使用
>ANY表示至少大于條件的一個(gè)值,大于最小值
6.EXISTS
用于一個(gè)子查詢,測試是否存在
USE ?db_2008
GO
select * from Employee
WHERE EXISTS ?(select NULL)
7.邏輯運(yùn)算符(NOT,AND,OR)
1)NOT :對布爾值取反,使用NOT返回不滿足表達(dá)式的行
2)AND :組合兩個(gè)布爾表達(dá)式,當(dāng)兩個(gè)表達(dá)式均為TRUE 時(shí)返回TRUE
3)OR ?:將兩個(gè)條件組合起來 ,返回滿足任一條件的行
8.比較運(yùn)算符
== 測試兩個(gè)表達(dá)式是否相等的運(yùn)算符
<> ?測試兩個(gè)表達(dá)式彼此不相等的條件的運(yùn)算符
!= ?測試兩個(gè)表達(dá)式彼此不相等的條件的運(yùn)算符
> ??測試一個(gè)表達(dá)式是否大于另一個(gè)表達(dá)式的條件的運(yùn)算符
>= ?測試一個(gè)表達(dá)式是否大于或等于另一個(gè)表達(dá)式的條件的運(yùn)算符
!> ?測試一個(gè)表達(dá)式是否不大于另一個(gè)表達(dá)式的條件的運(yùn)算符
< ??測試一個(gè)表達(dá)式是否小于另一個(gè)表達(dá)式的條件的運(yùn)算符
<= ?測試一個(gè)表達(dá)式是否小于或等于另一個(gè)表達(dá)式的條件的運(yùn)算符
!< ?測試一個(gè)表達(dá)式是否不小于另一個(gè)表達(dá)式的條件的運(yùn)算符