【发布时间】:2021-09-14 12:09:33
【问题描述】:
表学生
| StudentID | StudentName |
|---|---|
| 1 | A |
| 2 | B |
| 3 | C |
桌书
| BookID | BookName |
|---|---|
| 1 | Book1 |
| 2 | Book2 |
| 3 | Book3 |
桌书作业
| AssignID | BookID | StudentID | DateTime |
|---|---|---|---|
| 1 | 1 | 1 | 2021-06-26 |
| 2 | 2 | 1 | 2021-07-01 |
| 3 | 1 | 2 | 2021-07-03 |
结果表应该是
| StudentID | StudentName | BookCount |
|---|---|---|
| 1 | A | 2 |
| 2 | B | 1 |
| 3 | C | 0 |
如何在一次 SQL 执行中获取结果表? Left JOIN 似乎不是一种选择,因为它消除了 StudentID 3
刚刚在 BookAssignment 表中添加了另一个 DateTime 列 - 查询过去连续 7 天的图书数量的 SQL 语法是什么(即使是 0 本书的天数)?
【问题讨论】: