SQ--模糊查询
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了SQ--模糊查询,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1626字,纯文字阅读大概需要3分钟。
内容图文
![SQ--模糊查询](/upload/InfoBanner/zyjiaocheng/1164/0aa47823f8734a11836d14b71acc689b.jpg)
-
Between..And
--between...and...在数据库内部是做作特殊优化的,执行效率比> and<等这种方式快;
--between a and b 相当于:字段>=a and字段<=b
例如:
SELECT * FROM dbo.MyStudent WHERE S_Age BETWEEN 20 AND 30
SELECT * FROM dbo.MyStudent WHERE S_Age>=20 AND S_Age<=30
Between ..and还可以做分页。
比如,我现在设置每一页显示3条数据
传统的做法:
第一页:
SELECT TOP 3 * FROM dbo.MyStudent
第二页:
SELECT *FROM dbo.MyStudent WHERE S_ID BETWEEN 4 AND 6
...
总结分页:
SELECT * FROM dbo.MyStudent WHERE S_ID BETWEEN (当前页-1)*页容量+1 AND 当前页*页容量
-
IN关键字
判断一个列的值,是否在括号内:
SELECT * FROM dbo.MyStudent WHERE S_Gender IN (‘女‘)--正确
SELECT * FROM dbo.MyStudent WHERE S_Gender IN(1) --错误,数据类型不同【在将 varchar 值 ‘男‘ 转换成数据类型 int 时失败。】
-
模糊查询
使用系统已经定义好的通配符,按照定义的规则匹配数据,如果能匹配就查出来:
通配符,匹配符:_(下划线),%(百分号),[](中括号),^(尖括号)
_代表一个任意字符;
%代表零个或多个任意字符;
[]中括号代表一个字符的取值区间;
^配和[]使用,表示不是这个区间。注意,^z字符是数据库不兼容的,SQL Server可以用,其他数据库用not like
--查找姓“张”的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘张%‘
--查找名字中包含字母‘o’的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘%o%‘
--查找名字的第二位是字母‘i‘的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘_i%‘
--取值区间,用的很少。。
--查询中间任何位置有字母的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘%[a-z]%‘
--取值区间,用的很少。。
--查询中间任何位置有数字的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘%[0-9]%‘
--查找名字中有字母或数字的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘%[0-9,a-z]%‘
--SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘张四‘
--表中有名字为张四的学生,现在判断,_(下划线)是否可以匹配零个字符。如果可以的话,下面的这句SQL可以检索到数据
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘张四_‘
事实证明:_下滑线不能匹配零个字符,也就是说,下划线代表后面必须有一个字符!!!
--查询最后一位不是数字的学生信息
SELECT * FROM dbo.MyStudent WHERE S_Name LIKE ‘%[^0-9]%‘
原文:http://www.cnblogs.com/caofangsheng/p/5087426.html
内容总结
以上是互联网集市为您收集整理的SQ--模糊查询全部内容,希望文章能够帮你解决SQ--模糊查询所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。