Php 需要帮助进行sql查询以按列比较数据吗
我有一个mysql表,它收集每日销售数据(日期、销售额、gst等)。我需要一份select报表,将任何给定日期的每日销售额与去年和前年的同一日期进行比较,以查看我们在前几年的同一天赚了多少钱 为了了解输出表的外观,我在中提供了一个示例表 下面是中的sql表数据 我试过这样的说法:Php 需要帮助进行sql查询以按列比较数据吗,php,mysql,sql,Php,Mysql,Sql,我有一个mysql表,它收集每日销售数据(日期、销售额、gst等)。我需要一份select报表,将任何给定日期的每日销售额与去年和前年的同一日期进行比较,以查看我们在前几年的同一天赚了多少钱 为了了解输出表的外观,我在中提供了一个示例表 下面是中的sql表数据 我试过这样的说法: SELECT * FROM sales_chc WHERE MONTH(sale_date) = '1' 当然,它会提供我想要的过滤结果,但我不知道如何在give表示例中显示结果。通过更改WHERE语句中的年和月,您
SELECT * FROM sales_chc WHERE MONTH(sale_date) = '1'
当然,它会提供我想要的过滤结果,但我不知道如何在give表示例中显示结果。通过更改WHERE语句中的年和月,您可以获得所需的任何月/年组合的报告
SELECT sn.sale_date AS SaleY0 , sn.EFTPOS AS EFTPOSY0, sn.total AS totalY0,
s1.sale_date AS SaleY1 , s1.EFTPOS AS EFTPOSY1, s1.total AS totalY1,
s2.sale_date AS SaleY2 , s2.EFTPOS AS EFTPOSY2, s2.total AS totalY2
FROM sales_chc sn
LEFT JOIN sales_chc S1
ON s1.sale_date=(sn.sale_date -INTERVAL 1 YEAR)
LEFT JOIN sales_chc S2
ON s2.sale_date=(sn.sale_date -INTERVAL 2 YEAR)
WHERE YEAR(SN.sale_date)=2016 AND MONTH(SN.sale_date)=1