Mysql 精准查询与模糊查询【原创】

2017-01-10 10:04:05来源:作者:IT985博客人点击

有一次做项目,没有搞清楚精准查询和模糊查询的区别,写的代码不能用,存在bug,后来特地去学习了这两个查询语句

个人理解:精准查询就是查询条件和符合查询条件的一字不差,比如,我要搜索姓名为ada这个关键词,查询的结果就只有两种,1是没有叫ada的,另一种就是有叫ada的;模糊查询就是查询结果符合查询条件的,就都会被显示,比如我搜索a,结果就会出现与a相关的信息。

Sql 查询语句是

SELECT * FROM year ORDER BY id DESC

精准查询的语句

SELECT * FROM year WHERE id = 2

(查询id为2的信息)

模糊查询有

a:

SELECT * FROM `order_form` WHERE amount LIKE '%2%' ORDER BY `amount` ASC

(找到字段为amount这一列的所有带有2的值,然后升序排)

b:_是任意单个字符的意思

SELECT * FROM `order_form` WHERE amount LIKE '%_2%' ORDER BY `amount` ASC

(2在右边)

SELECT * FROM `order_form` WHERE amount LIKE '%_2_%' ORDER BY `amount` ASC

(2在中间)

SELECT * FROM `order_form` WHERE amount LIKE '%2_%' ORDER BY `amount` ASC

(2在左边)

C: [ ] 表示括号内所列字符中的一个

SELECT * FROM `order_form` WHERE amount LIKE '%[123]2%' ORDER BY `amount` ASC

(匹配12 22 32 开头的数字)

d: [^ ] 表示除了括号内所列字符中之外

SELECT * FROM `order_form` WHERE amount LIKE '%[^123]2%' ORDER BY `amount` ASC

和c相反

本文永久地址:http://blog.it985.com/19344.html

本文出自IT985博客 ,转载时请注明出处及相应链接。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台