【发布时间】:2015-09-25 08:17:04
【问题描述】:
问题涉及两个 SQLite 数据库表:
persons 和 measurements。
一个人可以有多个测量值,但每个测量值只有一个人。所以人与度量是1:M的关系。
我已经有一个显示所有人的列表。 persons表中的数据库实体通过我自己编写的对象关系映射类转换为人对象,然后人名显示在列表中。
现在我必须展开列表,不仅要显示人名,还要显示每个人的测量次数。
一个列表条目应如下所示:
Person XY
2 Measurements
一种方法是在显示列表之前对每个人进行单独的COUNT 查询。然而,这将是一个非常低效和糟糕的解决方案。
另一种方法是将ref_count 列添加到persons 表中,该列必须包含相关测量的数量。
如果感觉关系数据库对于此类问题的结构不好。我应该如何实现这个列表?
【问题讨论】:
-
对于 SQLite 部分:我想这两个表都有一个用于人“id”的列。你为什么不做一个内部连接给你的名字和使用人'id'的计数? - 对于 android 部分:请发布您的代码
标签: java android database sqlite orm