我认为这应该很容易,但它在逃避我。我在帐户和帐户组之间建立了多对多的关系。一个帐户可以在零个或多个组中,所以我使用标准连接表。
Accounts
--------
ID
BankName
AcctNumber
Balance
AccountGroups
-------------
ID
GroupName
JoinAccountsGroups
------------------
AID
GID
我正在使用 MS Access,FWIW。此外,这适用于低带宽情况,因此代码优化不如简单/可读性重要。
我使用 php 作为表示层,所以 Access 的基本结果很好。
至于如何处理多结果情况,我实际上有两件事我正在尝试构建。第一个在一个列中列出了所有组,因此:
Bank AcctNum Balance Groups
--------|--------------|----------|----------------
Citi 930938 400 Payroll
HSBC 8372933 100 Monthly, Payroll
Wells 09837 800 -
Chase 8730923 250 Monthly
第二个是主从列表:
Name AcctNum Balance
------------|----------|----------
Payroll (2) 500
Citi 930938 400
HSBC 8372933 100
..................................
Monthly (2) 350
HSBC 8372933 100
Chase 8730923 250
..................................
Wells 09837 800
对于主从细节,我的计划只是从数据库中获得一个大的结果集,并根据需要在 php 中调整它。由于无论如何都会在 php 中进行一些重要的后处理,也许我应该只做三个单独的查询并在那里进行连接。(因为我更喜欢那种语言。)