sql语句查询逗号分隔的字段,mysql 逗号分隔 查询

  sql语句查询逗号分隔的字段,mysql 逗号分隔 查询

  创建表测试(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),pname VARCHAR(20) NOT NULL,pnum VARCHAR(50)NOT NULL);

  然后插入带有逗号分隔的测试数据

  插入到测试(pname,pnum)值(产品1,1,2,4);

  插入到测试(pname,pnum)值(产品2,2,4,7);

  插入到测试(pname,pnum)值(产品3,3,4);

  插入到测试(pname,pnum)值(产品4,1,7,8,9);

  插入到测试(pname,pnum)值(产品5,33,4);

  查找商品数量字段中包含3或者9的记录

  MySQL SELECT * FROM test WHERE find _ in _ set( 3 ,pnum)或find_in_set(9 ,pnum);

  - - -

   id pname pnum

  - - -

   3 产品3 3,4

   4 产品4 1,7,8,9

  - - -

  一组2行(0.03秒)

  使用正则

  MySQL SELECT * FROM test WHERE pnum REGEXP (3 9);

  - - -

   id pname pnum

  - - -

   3 产品3 3,4

   4 产品4 1,7,8,9

   5 产品5 33,4

  - - -

  一组3行(0.02秒)

  这样会产生多条记录,比如33也被查找出来了。

  换一种方式

  MySQL select*fromtestwhereconcat(,,pnum,,)regexp[^0-9][39][^0-9];

  - - -

   id pname pnum

  - - -

   3 产品3 3,4

   4 产品4 1,7,8,9

  - - -

  集合中的2行(0.01秒)

  3、select * from OA _ student _ archives where CONCAT(,,pe_projects,,)like %,11,% ;

  这种方式也可以。

  注意:

  标红的MySQL select*fromtestwhereconcat(,,pnum,,)regexp[^0-9][39][^0-9];

  这种,当时小于10的数据搜索是可以的,但是如果是大于10的,则不能用,原因我还不太清楚,有大神可以解释下吗?

  总结如下:

  1、select * from OA _ student _ archives where CONCAT(,,pe_projects,,)like %,11,% ;

  2、select * from OA _ student _ archives where find _ in _ set( 12 ,PE _ projects);

  以上的两个都可以用。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 使用php连接mysql数据库,php连接数据库的方法
  • 使用php连接mysql数据库,php连接数据库的方法,一文详解PHP连接MySQL数据库的三种方式
  • pymysql菜鸟教程,pymysql 使用
  • pymysql菜鸟教程,pymysql 使用,pymysql模块使用简介与示例
  • mysql锁实现,mysql锁算法
  • mysql锁实现,mysql锁算法,MySQL锁机制与用法分析
  • mysql连接报错10061,mysql连接错误10060
  • mysql连接报错10061,mysql连接错误10060,MYSQL无法连接 提示10055错误的解决方法
  • mysql连接报10060错误,mysql连接报错10055
  • mysql连接报10060错误,mysql连接报错10055,MySQL连接异常报10061错误问题解决
  • mysql辅助索引和主键索引,mysql 主键 外键 索引
  • mysql辅助索引和主键索引,mysql 主键 外键 索引,MySQL索引之主键索引
  • MySQL语句大全,mysql常见语句总结
  • MySQL语句大全,mysql常见语句总结,MySQL语句整理及汇总介绍
  • mysql触发器的使用方法实验报告,mysql中触发器的使用
  • 留言与评论(共有 条评论)
       
    验证码: