首页 > 后端开发 > php教程 > 请大神分开解释一下SQL语句

请大神分开解释一下SQL语句

WBOY
发布: 2016-06-06 20:10:58
原创
1015 人浏览过

这句sql是什么意思,请大神指教

<code>SELECT `sid`,count(*) AS count FROM `hx_shop_period` GROUP BY sid ORDER BY count desc LIMIT 5</code>
登录后复制
登录后复制

请大神分开解释一下SQL语句

回复内容:

这句sql是什么意思,请大神指教

<code>SELECT `sid`,count(*) AS count FROM `hx_shop_period` GROUP BY sid ORDER BY count desc LIMIT 5</code>
登录后复制
登录后复制

请大神分开解释一下SQL语句

查找 hx_shop_peried表,根据条件group by sid(以sid为分组)查找出sid字段和sid出现的次数,生成一个结果集。
然后对这个结果集进行降序排序,取出前5行

非大神...

1. SELECT 很好理解,指定要返回哪些值,这里是返回 sid 和 count

2. FROM 也很好理解,从 hx_shop_period 这张表里返回...

3. 那么 count(*) AS count 怎么理解?

count(column_name) 是用于计算数量的,括号内是列的名字,如果为*表示表中的记录数。

但这里与 GROUP BY 连用,意思是计算各个 sid 的数量。

4. ORDER BY / LIMIT 都很好理解就是按照什么排序,和限制返回数目

连起来就是从 hx_shop_period 这张表里返回5条 sid 和 sid 的数量的消息,结果按照数量降序。

聚合sid,sid一样的数量加一起放一个字段,由数量降序只取5条记录

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板