您的位置:首页 > 数据库 > MySQL

mysql 同一篇文章添加到不同栏目

2014-04-12 22:18 399 查看
 id name str
 1sonnyboy1,11,12,13,
2sonnyboy12,22,23,24
3sonnyboy211,23,12
   表名为 temp

需要查询 str 包含1的字段 的name值  根据上表中查询 应该只有id 为1的 满足需求

在mysql 中instr函数的语法是:INSTR(字段名, 字符串)。这个函数返回字符串在某一个字段的内容中

的位置, 没有找到字符串返回0,否则返回所在的位置(是从1开始)

1.select name from temp where instr(str,1)>0

包括sonnyboy 和sonnyboy2

2.

FIND_IN_SET(str,strlist) 

如果字符串str在由N子串组成的表strlist之中,返回一个1到N的值。一个字符串表是被“,”分隔的子

串组成的一个字符串。如果第一个参数是一个常数字符串并且第二个参数是一种类型为SET的列,

FIND_IN_SET()函数被优化而使用位运算!如果str不是在strlist里面或如果 strlist是空字符串,返回

0。如果任何一个参数是NULL,返回NULL。如果第一个参数包含一个“,”,该函数将工作不正常。 

mysql>   SELECT   FIND_IN_SET( 'b ', 'a,b,c,d ');
select  name from temp where find_in_set(1,str);

这个查询满足要求
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql php