SQL语句中find_in_set、like、in的区别及使用方法
来源:互联网 发布:muse软件怎么玩 编辑:程序博客网 时间:2024/06/06 13:04
find_in_set(str,strlist)函数
str 要查询的字符串
strlist 字段名, 参数以“,”分割 如(1,2,3,4)
查询字段(strlist)中包含(str)的结果,返回结果为null,或者记录。
基本语法使用
1、in查询相当于多个or条件的叠加。例如:
select * from user where user_id in (1,2,3);
等效于
select * from user where user_id = 1 or user_id = 2 or user_id = 3
not in 与 in相反
2、+---+--------+
| id | follow_id |
+----+-------+
| 1 | 14,15 |
| 2 | 13 |
这时,select * from test where find_in_set('5',follow_id);这样是查不到的,返回值为null,因为follow_id中没有“5”这个值,它不同于like模糊查询,它是以“,”来分割。
如果使用like查询,查询结果为id=1的一条记录。
sql中like用法,可以参考 :http://blog.sina.com.cn/s/blog_a74f39a201018jal.html
总结:
find_in_set与like的区别
like是广泛的模糊匹配,字符串中没有分隔符,find_in_set是精确匹配,字段值以英文“,”分隔,find_in_set查询的结果要小于like查询的结果。
find_in_set与in的区别
select * from table_name where 'test' in (list);
select * from table_name where find_in_set('test',list);
所以如果list是常量,则直接用in;如果list是变量,则要使用find_in_set()函数。
- SQL语句中find_in_set、like、in的区别及使用方法
- SQL 语句中的in、find_in_set、like的区别
- SQL 语句中的in、find_in_set、like的区别
- sql find_in_set 和 like的区别
- FIND_IN_SET和like的区别
- FIND_IN_SET和like的区别
- MySQL中 FIND_IN_SET 与 IN 的区别
- mysql中find_in_set()和in的区别
- sql语句中条件查询in、like、=的效率
- Sql语句中IN和exists的区别及应用
- Sql语句中IN和exists的区别及应用
- sql 的 find_in_set函数使用方法
- mysql中FIND_IN_SET的使用方法
- mysql中FIND_IN_SET的使用方法
- mysql中FIND_IN_SET的使用方法
- mysql中FIND_IN_SET的使用方法
- mysql中FIND_IN_SET的使用方法
- mysql中FIND_IN_SET的使用方法
- 浏览历史
- 影响组学
- 验证码功能js实现
- LeetCode121. Best Time to Buy and Sell Stock解题
- 用numpy做图像处理
- SQL语句中find_in_set、like、in的区别及使用方法
- AsyncTask
- 云星数据---Scala实战系列(精品版)】:Scala入门教程010-Scala实战源码-object(类)
- jquery之UI型插件
- 中国银联Applepay客户端接入
- 2017 Q3 ,互联网人的薪资发生了哪些变化?
- 4.1 编程语言的几个发展阶段
- 使用ifstream和getline读取文件内容[c++]
- HDU 1251-统计难题