【发布时间】:2015-10-01 18:25:59
【问题描述】:
我有两张桌子
First_id | Text Second_id | First_id | Date | Email
我需要从第一个表中获取所有记录,其中包含第二个表的计数,日期为空,电子邮件为空。
我有sql:
Select * from first f join second s on f.id = s.first_id where date is null and email is null group by first_id having(count(s.id) < 10 or count(s.id) = 0)
效果很好,但是我在第二个表中填写了第一个表中的 id 的所有数据和电子邮件,但我没有得到任何结果。
样本数据: 第一张表
1 | one
2 | two
第二张桌子
1 | 1 | NULL | NULL
1 | 1 | 2015-01-01 | NULL
1 | 2 | 2015-01-01 | NULL
1 | 2 | 2015-01-01 | NULL
我期望输出:
1 | one | 1
2 | two | 0
最后一列是从第二个开始的条目计数,日期和电子邮件为 NULL。我的查询返回
1 | one | 1
没有第二行
【问题讨论】:
-
“我需要从第一个表中获取所有记录,其中包含第二个表的计数,日期为空,电子邮件为空。”:我不明白。那么你想准确计算什么?考虑发布示例输入和输出数据以澄清您的问题。