首页 > 解决方案 > 进行分组时如何引用外部表列

问题描述

表A

编号 | 出价

表B

编号 | 姓名

select b_id, count(*) from TableA group by b_id order by count(*) asc

我得到的结果是

50 1
100 2
150 3

我想要与 50,100, 150 对应的名称作为我的结果

item50 1
item100 2
item150 3

标签: postgresql

解决方案


您可以将该name列添加到GROUP BYandSELECT子句:

SELECT
    b.id,
    b.name,
    COUNT(a.b_id) AS cnt
FROM TableB b
LEFT JOIN TableA a
    ON b.id = a.b_id
GROUP BY
    b.id,
    b.name
ORDER BY
    COUNT(*);

推荐阅读