首先做一下查询某个字段不重复(使用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;
文章中有标签字段(label),存的是标签ID字符串。
现在想在文章列表进行筛选,根据标签筛选出对应标签的文章
但是不能用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)
本文介绍MySQL数据库中执行select查询语句,查询指定列的数据,即指定字段的数据。再来回顾一下SQL语句中的select语句的语法:
Select
语句的基本语法:
Select
<列的集合>
from
<表名>
where
<条件>
order
by
<排序字段和方式>
如果要查询某个表中的指定列的所有数据,则查询语句可以写作:
select
列名1,列名2,列名3...
from
<表名>
要说明一个,这个语句后面仍然可以使用where子句,用来选择指定行的指定列。这样可以更精准的查询出需要的结果来。
下面来看一个例子,查询test表中,t_name和t_birth两个字段的数据,并且匹配行t_name='name2':
mysql>
select
t_name,t_birth
from
test
where
t_name='name2'
+-------+------------+
|
t_name
|
t_birth
|
+-------+------------+
|
name2
|
2013-01-01
|
+-------+------------+
1
rows
in
set
(0.00
sec)
关于MySQL使用select语句查询指定表中指定列(字段)的数据,本文就介绍这么多,希望对大家有所帮助,谢谢!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)