Php 一个mysql查询,用于每天的所有订单计数
我正在尝试创建通用查询,以便在选择日期时生成各种报告 比如说, 对于过去7天的订单值,我需要以下输出 订单日期订单值Php 一个mysql查询,用于每天的所有订单计数,php,mysql,Php,Mysql,我正在尝试创建通用查询,以便在选择日期时生成各种报告 比如说, 对于过去7天的订单值,我需要以下输出 订单日期订单值 2014-05-15 - 700 2014-05-16 - 0 2014-05-17 - 100 2014-05-18 - 0 2014-05-19 - 0 2014-05-20 - 0 2014-05-21 - 200 如果该日期未显示订单数据,则该日期应显示0。如果订单值是当天的订单数,则MySQL表中的订单值应默认为0。如果不是,这是一个错误,应该修复,但假设您无法更改它
2014-05-15 - 700
2014-05-16 - 0
2014-05-17 - 100
2014-05-18 - 0
2014-05-19 - 0
2014-05-20 - 0
2014-05-21 - 200
如果该日期未显示订单数据,则该日期应显示0。如果订单值是当天的订单数,则MySQL表中的订单值应默认为0。如果不是,这是一个错误,应该修复,但假设您无法更改它,在这种情况下,您可以使用
COALESCE
函数在MySQL查询级别执行此操作
假设您的表是orders\u stats
,order\u value
是整数
SELECT `order_date`, COALESCE(`order_value`, 0) as `order_value` FROM `orders_stats`;
此查询的工作方式与以下相同:
SELECT `order_date`, `order_value` FROM `orders_stats`;
差异在于order\u值
如果为null
,则将设置为0
有关合并的更多信息,请访问和。您可以使用“选择订单日期,合并(NULLIF(订单值)”,“0”)作为order_value'在sql查询中显示缺少的日期是一个问题。您需要或编写一个过程,或将它们添加到php中。order value将是当天所有订单的计数。您是否只需要sql解决方案或php代码?@splash58我只需要mysql解决方案如果表中没有任何日期的记录,该怎么办?我希望输出中包含该日期和日期和0value@BhaveshPatel这是您问题的答案,谢谢@Linek的快速回答。今晚我将检查此解决方案