如何在月日期条件下从mysql表中获取精确数据

时间:2016-09-02 08:10:35

标签: php mysql

大家好我的erp系统我希望从数据库中获取一些特定类型的数据 例如,如果我想在当前月份购买中添加行数,那么我使用

select count(receive_no) FROM tbl where contact_id=".$contactid." AND MONTH(created_on) = MONTH(CURDATE());

但是会得到错误的结果 如果我想要当前月份的结果总和,那么我使用

select sum(price) FROM tbl where contact_id=".$contactid." AND MONTH(created_on) = MONTH(CURDATE())

如果我想今天的日期行数或购买,那么我使用

select count(receive_no) FROM tbl where contact_id=".$contactid." AND created_on >= CURDATE()

因此,如果我想要今天的购买总额,那么我使用

select sum(price) FROM tbl where contact_id=".$contactid." AND created_on >= CURDATE()

我的表在字段日期时间创建,如2016-09-01 11:56:45 所以请建议我更好的查询以获取确切的数据 感谢

1 个答案:

答案 0 :(得分:0)

目前还不清楚 - 如果有的话 - 最后3个问题是什么问题,但是第一个问题会在今年这个月的这个月得到你的数据在此之前等等。

所以你需要的是(有几种方法可以写出来......):

select count(receive_no) FROM tbl where 
        contact_id=".$contactid." 
    AND MONTH(created_on) = MONTH(CURDATE())
    AND YEAR(created_on) = YEAR(CURDATE())