Her*_*art 2 sql group-by inline
我有一个伪SQL语句
select [orderid], [productname], [price], [productid_FK]
from Order
Run Code Online (Sandbox Code Playgroud)
这将给我5行:

结果是5行,其中3行的[productid_FK]为"2".此FK列引用名为[Product]的表.
现在假设我想要一个基于[productid_FK]的额外列.
该列必须包含另一个名为[products]的表中的产品总数
我可以通过加入当前的伪查询来实现这一点吗?
获得结果的一种方法是子查询.根据数据库的不同,有几种方法可以做到这一点.我经常这样做
SELECT o.[orderid],
o.[productname],
o.[price],
[productid_FK],
p_counts.k
FROM order o
INNER JOIN (SELECT productid_fk,
COUNT(product_id) k
FROM products
GROUP BY productid_fk) p_counts
ON o.productid_fk = p_counts.productid_fk
Run Code Online (Sandbox Code Playgroud)