JZGKCHINA
工控技术分享平台
在上一篇文章中介绍了SQL SERVER的SELECT语句的简单使用方法《SQL Server 数据库设计--SELECT语句》,这篇文章继续介绍其他常用的查询方法。
第一,查询结果中使用LIKE和通配符
上图中介绍了4中通配符的使用方法。下面以实际例子介绍
代码语言:javascript复制'当在查询中使用中文时,有时会查询不到数据,实际记录中是有对应的记录的,一般是
'由于编码问题,可以在中文字符前面加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 ‘[^张李]%’
第二,查询中使用操作符
在上图中介绍了常用的操作符的含义。下面以实际例子介绍
(1)操作符 BETWEEN ... AND 选取介于两个值之间的数据范围。值可以是数值、文本或者日期。
代码语言:javascript复制SELECT * FROM Result WHERE Result BETWEEN 50 AND 90
SELECT * FROM Result WHERE Result NOT BETWEEN 50 AND 90
(2)比较的使用,不等于有两种:<>, !=
代码语言:javascript复制SELECT * FROM Result WHERE (Result > 50) AND (Result < 80)
(3)操作符 IN 允许在WHERE子句中规定多个值。也可以使用 NOT IN
代码语言:javascript复制SELECT StudentName,phone, Address, IDENTITYcard
FROM Student WHERE StudentName IN (N'李雷',N'李莫愁')
(4)对查询结果排序(ASC:升序,DESC:降序)
代码语言:javascript复制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 --多列排序
(5)使用IS NULL 查询空值,不能使用” =NULL ”
代码语言:javascript复制SELECT * FROM Student WHERE phone IS NULL --查询phone为空的记录
SELECT * FROM Student WHERE phone IS NOT NULL --查询phone不为空的记录
别走开,下一篇文章继续介绍更多高级查询功能。
姿势已摆好
就等你点啦
作者简介
剑控老罗
具有10年工业自动化领域SCADA,DCS,PLC等项目实施经验,熟悉石化行业,油田数字化行业,熟悉多个品牌PLC,HMI,SCADA,数据库等。