我有两张桌子:T_Guest,T_Table
在T_Guest我有一个客人名单。每个来宾都有一个 ID ( g_no ) 和一个与来宾相关的表的 ID ( t_no ) 。有可能同一张桌子上会有很多客人。
在T_Table我有一个表列表。每个表都有一个 ID ( t_no ) 和一个字段n_places ,该字段描述了该表有多少个地方。
问题: 我需要构建一个 SQL 查询(在 MS Access 中),它将显示一个表 ID 的列表,这些表 ID 仍然有一个空闲位置。
我有一个想法,首先找到已满的表列表,而不仅仅是从整个可用表组中对该组实施 EXCEPTION 。
但是要计算有多少表确实有零空闲位置,我需要以某种方式计算每个表:
n_places - NUMBER_OF_GUESTS_ON_THAT_TABLE
最后一个 ( NUMBER_OF_GUESTS_ON_THAT_TABLE
) 它只是:
SELECT COUNT(*)
FROM T_Table INNER JOIN T_Guest ON T_Table.t_no = T_Guest.t_no
GROUP BY T_Table.t_no
但我不知道如何实现 DIFFERENCE n_places - NUMBER_OF_GUESTS_ON_THAT_TABLE
有人可以帮我完成那种任务吗???