【发布时间】:2017-10-27 18:16:06
【问题描述】:
我想从表中选择公司 id、日期和编号,但是此查询不显示某些编号为 0 的公司的月份。
这是查询:
SELECT c.name, date_format(e.created, '%y_%m') AS date, count(*)
FROM company c
JOIN edited e
on c.id=e.company_id AND e.created >='2016-12-13 00:00:00' AND e.created <='2017-05-20 00:00:00'
GROUP BY c.id, date
有些结果是这样的 4 16_12 2 4 17_01 4 4 17_04 2 4 17_05 2 没有 17_03(三月)。它怎么能用 0 显示 17_03 ?
【问题讨论】:
-
能否提供相关表的架构以及示例数据和预期输出?
-
我有三个表,company(id 1,name a / id 2,name a / id 3,name c),edited(id 1,send_id 1,created 2017-01-01/id2 ,send_id4,created 2017-02-01/id3,send_id6,created2017-02-22) 和 send(id1, company_id1, created2017-01-01/id2,company_id1,created2017-02-02/ id3,company_id 1, created2017- 05-01/ id4,company_id 1,created2017-02-01/ id5,company_id2,created2016-12-01/ id6,company_id2,created2017-02-22)
-
我添加评论时格式改变了,希望你能明白我的意思。对于已编辑的表,公司可能没有每个月的数据,我不确定发送表是否包含每个月的数据。如何选择每个月的值,对于没有值的月份,它可以显示:2017-04 0(这是计数列下的单元格。)