我的表格中有数据如下:
stuff stuff stuff stuff date_viewed
whtever whtever whtever whtever 2018-05-15 20:58:31
whtever whtever whtever whtever 2018-05-13 15:32:22
whtever whtever whtever whtever 2018-05-15 23:58:44
whtever whtever whtever whtever 2018-05-05 13:21:32
whtever whtever whtever whtever 2018-05-12 13:21:32
whtever whtever whtever whtever 2018-05-14 12:21:32
whtever whtever whtever whtever #more dates from today and other days...
我需要从今天开始订购商品,但大多数商品都需要订购商品,例如:
项目(今日观点20)
第2项(今日意见18)
第3项(今日意见14)
等......
我该如何做到这一点?
答案 0 :(得分:1)
为了简化,我假设该表名为table
,并且只有两列stuff
(某种ID或字符串或您拥有的任何内容)和包含date_viewed
列的列观点的日期和时间。
在这种情况下,您的查询可能如下所示:
SELECT stuff, DATE(date_viewed), COUNT(*) AS views FROM `table`
GROUP BY stuff, DATE(date_viewed)
ORDER BY views DESC
查询在做什么?
*它选择stuff
以及date_viewed
的{{3}},以及由date part计算并存储在别名(AS
)名称下的行数来自views
的{{1}}。
*结果按table
和stuff
进行分组,即所有具有相同项目(“填充”)和日期的条目都放入一个结果行,date
保留该数字原始行。
*最后,结果按降序排列(views
)的{ORDER BY
个数量的视图(views
,这是COUNT(*)
的别名)排序,以便行大多数观点都是第一位的。