【发布时间】:2020-12-02 05:28:54
【问题描述】:
- 我有两个表可供选择和连接数据。
- 两者共享对应的键值。
- 第二个表的select语句应该count()和group by()值。
一个例子和预期的结果应该说明这种情况:
表一
| id | rev | colour |
| --- | --- | ------ |
| 1 | a | blue |
| 2 | a | green |
| 1 | b | grey |
表二
| id | rev | note |
| --- | --- | -------- |
| 1 | a | rejected |
| 1 | a | removed |
| 1 | b | rejected |
| 1 | b | rejected |
| 2 | a | removed |
| 2 | a | removed |
预期结果集的伪 SQL
t1.id, t1.rev, t1.colour, t2.count(rejected), t2.count(removed)
预期结果
| id | rev | colour | rejected | removed |
| --- | --- | ------ | -------- | ------- |
| 1 | a | blue | 1 | 1 |
| 2 | a | green | 0 | 2 |
| 1 | b | grey | 2 | 0 |
在一条 SQL 语句中实现这一点的最佳方法是什么? 我想我应该使用两个子选择并加入它们。不知道怎么样 放入count(), group by() 并加入这里。
感谢您的想法!
【问题讨论】:
标签: sql oracle join count subquery