mysql 字段存储多个值 ,判断一个值是否在其中

摘要:
表C_file,其中有个字段是spile,他存的是字符形式,例如:idspile12,10,1122,3,20,2231,6,845,6,1,9select*fromC_filewherespileLIKE'%1%'如果这样查询的话,会查询出ID为1、3、4,但正确的应该是3、4那么这个SQL语句应该怎么写才正确的查询出1正确方法:select*fromC_filewherefind_in_set

表C_file,其中有个字段是spile,他存的是字符形式,例如:

id
spile
1
2,10,11
2
2,3,20,22
3
1,6,8
4
5,6,1,9
select * from C_file where spile LIKE '%1%'

如果这样查询的话,会查询出ID为1、3、4,但正确的应该是3、4

那么这个SQL语句应该怎么写才正确的查询出1

正确方法:

select * from C_file where find_in_set(1,spile)

或者:

select * from C_file where instr(concat(',',spile,','),',1,')<>0;

免责声明:文章转载自《mysql 字段存储多个值 ,判断一个值是否在其中》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇PostgreSQL+pgpool-II复制方案ASP.NET输出JSON格式数据下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

数据同步工具otter(一)谈谈binlog和canal

之前因为懒,没有针对otter做更多的解释和说明,在使用过程中,也发现了一些问题,此次补上一个完整的文档,方便大家使用。 Otter是基于cannal开源的,canal又是基于mysql binlog的产品。我们就从binlog说起 binlog mysql的binlog日志是被设计用来作主从备份或者数据恢复用的。binlog是The Binary Lo...

Ubuntu Navicat for MySQL安装以及破解方案

Ubuntu Navicat for MySQL安装以及破解方案                今天安装了Navicat for MySQL有LINUX版本了哈, 开心的说,首先上官网上下载LINUX版本: http://www.navicat.com/download/navicat-for-mysql 1. 下载 navicat110_mys...

Mysql的索引

什么是索引: 数据库中的索引与书籍中的目录类似,在一本书中,利用目录可以快速查找所需要的信息,无需阅读整本书.在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据.书中的目录是一个词语列表,其中注明了包含各个词的页码,在数据库中,由于数据存储在数据表中,因此索引是创建在数据表对象上的,由表中的一个字段或多个字段生成的键组成,这些键存储...

Sqlserver存储过程及其创建(转)

存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工作容易得多。存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。 存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单...

我的MYSQL学习心得(一) 简单语法

我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(八) 插入 更新 删除 我的MYSQL学习心得(九) 索引 我的MYSQL学习心得(十) 自定义...

ORACLE DBA命令

1 运行SQLPLUS工具sqlplus 2 以OS的默认身份连接/ as sysdba 3 显示当前用户名show user 4 直接进入SQLPLUS命令提示符sqlplus /nolog 5 在命令提示符以OS身份连接connect / as sysdba 6 以SYSTEM的身份连接connect system/xxxxxxx@服务名 7 显示当然...