PHP从Twitter趋势中获取MySql表中的数据

时间:2016-01-08 04:09:11

标签: php mysql web-deployment

我有一个mysql表如下 -

crId    ccId    ccatId  entryDate
458     186     12      2016-01-01
459     186     37      2016-01-01
460     186     117     2016-01-01
461     187     12      2016-01-04
462     187     117     2016-01-05
463     187     117     2016-01-07
464     187     12      2016-01-07

现在,我想从这个表中获取数据,如twitter趋势部分。

  • 在过去1周内从表中获取所有数据
  • 按照降序显示表格中的前5个条目
  • 计算并显示每个 ccatId 条目的数量。例如,在表格中,117有3个条目,12有3个条目等。

我该怎么做?我找不到解决方案?有人可以帮帮我吗?

预期结果 -

12
3 times

117
3 times

12
2 times

2 个答案:

答案 0 :(得分:1)

尝试此查询:

SELECT ccatId, count(ccatId) AS rank FROM `table_name` GROUP By ccatId ORDER BY rank DESC;

它会返回这样的内容,

+--------+-------+
| ccatId |  rank |
+--------+-------+
|   12   |    3  |
|  117   |    3  |
|   37   |    1  |
+--------+-------+

如果您想要上周的参赛作品,那么只需输入一个WHERE子句。

答案 1 :(得分:0)

请检查以下查询:

SELECT ccatId, count( ccatId ) AS count FROM `tablename` WHERE `entryDate` > DATE_SUB( NOW( ) , INTERVAL 1 WEEK )  GROUP BY ccatId ORDER BY count DESC

它会返回这样的内容,

+--------+-------+
| ccatId |  count|
+--------+-------+
|   12   |    2  |
|  117   |    2  |
+--------+-------+