SQL Server 數據庫設計--SELECT語句之二

在上一篇文章中介紹了SQL SERVER的SELECT語句的簡單使用方法,這篇文章繼續介紹其他常用的查詢方法。

SQL Server 數據庫設計--SELECT語句之二

第一,查詢結果中使用LIKE和通配符

SQL Server 數據庫設計--SELECT語句之二

上圖中介紹了4中通配符的使用方法。下面以實際例子介紹

'當在查詢中使用中文時,有時會查詢不到數據,實際記錄中是有對應的記錄的,一般是
'由於編碼問題,可以在中文字符前面加N,如: N‘李%’
'使用通配符%,查詢StudentName中第一個字是李,後面任意多個或者一個字
SELECT StudentName, phone, Address, IDENTITYcard
FROM Student WHERE StudentName LIKE ‘李%’
'使用通配符_,查詢StudentName中第一個字是李,後面任意一個字
SELECT StudentName, phone, Address, IDENTITYcard
FROM Student WHERE StudentName LIKE ‘李_’
'使用通配符[],查詢StudentName中第一個字是張王李任意一個字符,後面任意多個字
SELECT StudentName, phone, Address, IDENTITYcard
FROM Student WHERE StudentName LIKE ‘[張王李]%’
'使用通配符[^],查詢StudentName中第一個字不在張王李任意一個字符
SELECT StudentName, phone, Address, IDENTITYcard
FROM Student WHERE StudentName LIKE ‘[^張李]%’
SQL Server 數據庫設計--SELECT語句之二

第二,查詢中使用操作符

SQL Server 數據庫設計--SELECT語句之二

在上圖中介紹了常用的操作符的含義。下面以實際例子介紹

(1)操作符 BETWEEN ... AND 選取介於兩個值之間的數據範圍。值可以是數值、文本或者日期。

SELECT * FROM Result WHERE Result BETWEEN 50 AND 90 

SELECT * FROM Result WHERE Result NOT BETWEEN 50 AND 90
SQL Server 數據庫設計--SELECT語句之二

(2)比較的使用,不等於有兩種:<>, !=

SELECT * FROM Result WHERE (Result > 50) AND (Result < 80)
SQL Server 數據庫設計--SELECT語句之二

(3)操作符 IN 允許在WHERE子句中規定多個值。也可以使用 NOT IN

SELECT StudentName,phone, Address, IDENTITYcard 
FROM Student WHERE StudentName IN (N'李雷',N'李莫愁')
SQL Server 數據庫設計--SELECT語句之二

(4)對查詢結果排序(ASC:升序,DESC:降序)

SELECT * FROM Result ORDER BY Result ASC --默認升序,不加ASC
SELECT * FROM Result WHERE Result > 50 ORDER BY Result DESC

SELECT * FROM Student ORDER BY [ID] ASC, [IDENTITYcard] DESC --多列排序
SQL Server 數據庫設計--SELECT語句之二

(5)使用IS NULL 查詢空值,不能使用” =NULL ”

SELECT * FROM Student WHERE phone IS NULL --查詢phone為空的記錄
SELECT * FROM Student WHERE phone IS NOT NULL --查詢phone不為空的記錄
SQL Server 數據庫設計--SELECT語句之二

別走開,下一篇文章繼續介紹更多高級查詢功能。


分享到:


相關文章: