use*_*103 3 sql sql-server-2008
我无法得到这个SQL查询正确...
我想要前5个最新评论tblComment.问题是我得到的评论多一点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
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
假设您的评论表有一个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
Run Code Online (Sandbox Code Playgroud)