是否可以按时间戳存储的一天对行进行分组?

时间:2010-01-28 18:59:10

标签: mysql mysql-logic

我不确定这是否属于MySQL的范围,说实话还是需要一些php来解析数据。但如果是......可能需要某种存储过程。

我有一个存储时间戳和数量的行的表。

我的查询是动态的,将根据用户提供的日期范围进行搜索。我想检索表中日期范围之间每天金额的SUM()。 如果某一天没有条目,则包含0

有什么影响......

SELECT 
   CASE
     WHEN //there are entries present at a given date
       THEN SUM(amount)
     ELSE 0
   END AS amountTotal,
   //somehow select the day
   FROM  thisTableName T
   WHERE T.timeStamp BETWEEN '$start' AND '$end'
   GROUP BY //however I select the day

这是两个人... ... 有没有办法选择返回列的一部分?像mysql中的某种正则表达式一样? 有没有办法在没有行的日期返回0?

1 个答案:

答案 0 :(得分:2)

select * from thisTableName group by date(created_at);

在你的情况下,它更像是

SELECT id, count(id) as amountTotal
FROM thisTableName
WHERE timeStamp BETWEEN '$start' AND '$end'
GROUP BY DATE(timeStamp);

到目前为止,您的问题是重复的:link