【发布时间】:2016-02-12 05:45:01
【问题描述】:
我有两张桌子,hours 和 messages
hours 表只有一列hour 并插入了 0~23 个值。
messages 表也有hour 列。
我正在尝试加入这些表格。但我的查询不起作用。
select hours.hour,ifnull(count(*),0) from hours left join messages on messages.hour = hours.hour group by hours.hour
样本数据在这里
消息表
id text sender datetime hour
1 Hi, John Amy 2015-12-10 13:37:25 +0000 13
2 Yup Mike 2015-12-10 15:49:11 +0000 15
3 you there? Mike 2015-12-10 15:49:34 +0000 15
小时表
hour
0
1
2
3
4
..
23
我的查询结果
hour ifnull(count(*),0)
0 1
1 1
2 1
3 1
4 1
...
13 1
14 1
15 2
...
24 1
我想要什么
hour ifnull(count(*),0)
0 0
1 0
2 0
3 0
...
13 1
14 0
15 2
...
24 0
我怎样才能加入两个表并得到上面的结果?
【问题讨论】:
-
你需要
RIGHT JOIN -
@PM77-1 谢谢!但是 sqlite 不支持右连接 :(