SQL 语句中的in、find_in_set、like的区别
来源:互联网 发布:什么是大数据举例说明 编辑:程序博客网 时间:2024/05/22 09:01
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相反,如下
select * from user where user_id not in (1,2,3);
等效于
select * from user where user_id != 1 and user_id != 2 and user_id != 3;
1.find_in_set基本语法
FIND_IN_SET(str,strlist)
str 要查询的字符串,strlist 字段名 参数以”,”分隔 如 (1,2,6,8)
如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。
+----+---------+-----------+-------------+
| id | user_id | follow_id | follow_time |
+----+---------+-----------+-------------+
| 13 | 15 | 16,15 | 1478096138 |
| 14 | 15 | 17 | 1478177725 |
| 15 | 15 | 19 | 1478181035 |
+----+---------+-----------+-------------+
比如这张表,SELECT * from test where FIND_IN_SET('5',follow_id);这样是查不到的,返回值为null,因为follow_id中没有”5”这个值,它不同于 like 模糊查询,它是以“,”来分隔值
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分
转载出处:http://blog.csdn.net/nianzhi1202/article/details/53228454
- SQL 语句中的in、find_in_set、like的区别
- SQL 语句中的in、find_in_set、like的区别
- SQL语句中find_in_set、like、in的区别及使用方法
- sql find_in_set 和 like的区别
- FIND_IN_SET和like的区别
- FIND_IN_SET和like的区别
- SQL 中的=,in,like之间的区别
- SQL之查询函数LOCATE、POSITION、INSTR、FIND_IN_SET、IN、LIKE
- C# 参数化SQL语句中的like和in
- SQL 中的in 语句 IN 与 EXISTS 的区别
- SQL的like语句
- MySQL中 FIND_IN_SET 与 IN 的区别
- mysql中find_in_set()和in的区别
- SQL中的like语句详解
- sql语句中条件查询in、like、=的效率
- MySql中的FIND_IN_SET使用方法,满足包含查询,类似like但是不同于like的用法
- sql语句like的用法
- Like SQL语句的优化
- JAVA定时器Timer的使用
- Java学习总结之基本语法
- 配置Django框架为生产环境的注意事项(DEBUG=False)
- 回归分析
- PyQGIS开发 -- 环境搭建
- SQL 语句中的in、find_in_set、like的区别
- 【多线程】newScheduledThreadPool线程池比较scheduleAtFixedRate和scheduleWithFixedDelay
- const vector<int>::iterator和vector<int>::const_iterator的区别
- 欢迎使用CSDN-markdown编辑器
- php获取当前进程的id
- 字符串转换
- Mac OS X 修复问题: “readlink: illegal option -- f”
- rtp中的sdp信息生成
- 29编程练习