需求:
需要在一张表中,查询某个店铺05-17和05-10两天的同一个GMV字段数据
遇到问题:
在测试过程中发现,如果两天中任意一天没有数据,则该店铺整体数据均不显示
解决代码:
SELECT
a.Seller_nick,
IFNULL(a.GMV, 0),
IFNULL(b.GMV, 0) AS last_gmv
FROM
(
SELECT
c.*, date_sub(
c.STATISTIC_DATE,
INTERVAL 7 DAY
) last_week
FROM
tcc_actual c
WHERE
c.SHOP_ID IN (
1,2,3,4
)
) a
LEFT JOIN tcc_actual b ON a.SHOP_ID = b.SHOP_ID
AND a. STATUS = b. STATUS
AND a.last_week = b.STATISTIC_DATE
WHERE
a. STATUS = 1
AND a.STATISTIC_DATE = '2017-05-17'
查询结果
没有数据的店铺,显示结果为0,这样页面上就能够直观的查看每个店铺的情况