我无法正确获取此 sql 查询...
我想要来自 tblComment
的前 5 条最新评论。问题是我收到了不止一条评论,并且使用了相同的 ProductID
。我不想要那个。
SELECT DISTINCT TOP 5
tblProduct.ProductID,
tblProduct.ProductName,
tblComment.DateAdded
FROM
tblComment
INNER JOIN
tblProduct ON tblProduct.ProductID = tblComment.ProductID
ORDER BY
tblComment.DateAdded DESC
我究竟做错了什么?
最佳答案
假设您的评论表有一个 id 字段试试这个:
SELECT TOP 5
tblProduct.ProductID,
tblProduct.ProductName,
tblComment.DateAdded
FROM tblComment
JOIN tblProduct ON tblProduct.ProductID = tblComment.ProductID
JOIN (Select ProductID, max(id) as maxid From tblComment Group By ProductId) t on tblComment.id = t.maxid
ORDER BY tblComment.DateAdded DESC
关于sql - 在 SQL Server 中选择 DISTINCT TOP 5,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10093912/