【发布时间】:2015-03-30 10:10:25
【问题描述】:
我在我的数据库中创建了两个表;
- todo_list
- todo_list_item
现在,
todo_list 表包含
- id
- 名字
但是有子项称为列表项,因此是第二个表;
这个表todo_list_item包含
- id
- list_id
- 名字
- status_id
我想要实现的是:
- 列出所有 todo_lists
- 显示其中包含多少个todo_list_item
- 根据 todo_list 从 todo_list_item 表中获取最后一个 status_id
我可以通过一次加入来实现这一点,还是我真的必须加入 todo_list_item 表两次,以分别获取项目数和最后一个 status_id?
【问题讨论】:
-
“从 todo_list_item 表中获取最后一个 status_id”是什么意思,你如何说状态“XYZ”是最后一个或最新的?
-
@SMA 添加/更新新的 todo_list_item 时,您可以发布状态。数据库的实际结构有点复杂,但想法是您可以使用评论和状态更新待办事项。最后发布的状态将始终是该项目的“当前状态”。
-
“我可以通过一次加入来实现这一点吗?” - 不。“我真的必须加入 todo_list_item 表两次吗” - 是的。您甚至可能需要一个带有
having子句的子查询。