我需要一些有关如何设置即时解决方案的指导。我正在postgres中创建数据库,需要有关如何设置数据模型的帮助。
我正在使用个人应用程序,基本上我有用于用户,交易和组的表。
用户具有列(id, email)
的事务具有列(id, amount, user_id, ...)
因此,基本要点是个人用户拥有自己的交易。对我来说,最棘手的部分是设置组部分
组可以包含2个或更多用户,而我想要实现的是当2个或更多用户成为一个组时,我希望所有用户都能够从其他用户交易中获得总金额。
[我认为使用适当的唯一性和约束将user_id_one
和user_id_two
当作一个典型的“ friends数据模型”来处理groups表格会有所帮助,但会卡住。
所以我需要帮助的是,
该小组的桌子应该如何? (或者我可以采取另一种方法,添加另一张表?什么样的关系?)
查询应该看起来像什么,才能使两个用户都进行交易? (如果无法通过查询完成,我可以将服务器上的所有金额加起来)
任何帮助将不胜感激!
所以据我了解,您应该创建某种链接表示例:
| [User] | |[UserGroup]| | [Group] |
|user_id | |id | |group_id |
|email | ∞ 1 |user_id | 1 ∞ |other_data |
|other data| ----------> |group_id | <---------- | |
然后例如,您可以编写查询以获取一组中的所有事务:
SELECT * FROM Transacions t JOIN UserGroup ug ON t.user_id = ug.user_id WHERE ug.group_id= ?;
我不知道您要查询什么,但这仅是示例。