文章中有标签字段(label),存的是标签ID字符串。
创新互联建站是专业的博山网站建设公司,博山接单;提供网站制作、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行博山网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
现在想在文章列表进行筛选,根据标签筛选出对应标签的文章
但是不能用like。SO,FIND_IN_SET函数就大显身手了
FIND_IN_SET(str,strlist)
str 要查询的字符串
strlist 字段名 参数以”,”分隔 如 (1,2,6,8,10,22)
查询字段(strlist)中包含(str)的结果,返回结果为null或记录
倘若想搜索标签ID为2的文章:
SELECT id,label FROM dk_info where FIND_IN_SET ('2',label)
倘若想搜索标签ID为3的文章:
SELECT id,label FROM dk_info where FIND_IN_SET ('3',label)
//查询表中的数据 同时某个字段不重复 并且排序
首先做一下查询某个字段不重复(使用group by);
select * from 表名 where group by 不重复的字段名;
在做一下排序,我之前有发过一次排序,这次就做一个简单排序
order by 字段a=0 desc, 字段a desc,字段b desc (a字段等于0在最前面,a字段除了0之外的都为倒叙,b字段倒叙);
这样组合起来就好了
select * from 表名 where group by 不重复的字段名 order by 字段a=0 desc, 字段a desc,字段b desc;
比如表名叫
test
建表
create table test (content varchar(20));
insert into test values ('胜利');
查询
select * from test where instr('为胜利而来',content)0
引号里的相当于你输入的,content代表那个表里的字段,你看下结果吧
一个表一个表,一个字段一个字段的去查,比如:select
*
from
表1
where
字段1=值
把表导入到sql文件里面,然后打开这个文件,用"查找"的功能找这个值。但是如果表和数据库很大的话,恐怕也不容易导出和打开这个sql文件。