我在MS SQL中有2个表。 tblProducts和tblProductsImage之一。
所有产品都有分钟。 2张照片。但我想只展示第一张图片,每件产品。
我可以做什么INNER JOIN和SELECT命令。
答案 0 :(得分:1)
如果您可以使用申请,您可以使用这样的查询,但它按ID
排序select *
from tblProducts as P
outer apply
(
select top 1 T.Image from tblProductsImage as T
where T.ProductId = P.Id
order by T.Id
) as PI
答案 1 :(得分:1)
尝试这样的事情:
SELECT *
FROM TBLPRODUCTS T1
INNER JOIN (SELECT *,
Row_number()
OVER (
PARTITION BY PRODUCT_ID
ORDER BY X) RN
FROM TBLPRODUCTSIMAGE)T2
ON T1.PRODUCT_ID = T2.PRODUCT_ID
WHERE T2.RN = 1