我不知道该如何措辞,因此也请为我提供标题。:)
我有两张桌子。我们称它们为A和B。该B表具有a_id指向的外键A.id。现在,我想编写一条SELECT获取所有A记录的语句,并在其中添加一列,其中包含结果集中每一行的B每A行记录数。
A
B
a_id
A.id
SELECT
我现在正在使用Postgresql 9,但是我想这将是一个通用的SQL问题?
编辑:
最后,我使用了触发器缓存解决方案,该解决方案在A.b_count每次B更改时都会通过函数进行更新。
A.b_count
SELECT A.*, (SELECT COUNT(*) FROM B WHERE B.a_id = A.id) AS TOT FROM A