创建mysql查询以便在3天内逐步获取数据

时间:2014-08-02 09:25:58

标签: php jquery mysql sql

我想创建一个查询来从数据库中获取所有数据。但条件是从当前月份之前获得,数据将转换为3天时段与count.Like如果我有12个月数据和7月1至3日期数据将插入50行和3至6日期数据将插入到5行。如何获取这些东西。这是邮件问题。我想知道但没有发现与我的问题有关。这可能。

2 个答案:

答案 0 :(得分:1)

我假设你有一个DATE或DATETIME列,它标记了插入的日期,比如列created_at。然后你就可以得到理想的结果。

SELECT
    COUNT(*)
FROM
    your_table
WHERE
    created_at BETWEEN '2014-07-01' AND '2014-07-31 23:59:59'
GROUP BY
    (DAYOFMONTH(created_at) - 1) DIV 3

<强>解释

DIV运算符的帮助下,您可以获得3天的广告位。

注意 如果有一个没有行的插槽,它将不在结果中。要获得这些,您可以使用最多11个插槽的LEFT JOIN。

<强> Demo

答案 1 :(得分:0)

如果您将时间戳作为属性类型,那么可能会帮助您

SELECT count(*) as count
        FROM table
        AND
        TIMESTAMPDIFF(DAY,date,2014-08-01)<=3";

日期是您的列的属性, TIMESTAMPDIFF 会在给定日期之间找到差异,如果它在2014-08-01记录之后的3天内将显示。这样,只需将一个日期发送到此位置,您就可以从表中找到3个日期位。