我有一个帖子表和postcontent表。
每次编辑帖子时,都会在postcontent表中添加一个条目。
在每个这样的时间,一个名为version的字段将增加1 在postcontent表中。
如何从post post和[Description]到postcontent表获取PostId 每个帖子的版本最大 即按帖子ID分组 即我希望每个帖子都有一个原始文件,这是帖子的“最大版本”
答案 0 :(得分:2)
select P.PostID,
PC.[Description]
from Post as P
inner join
(
select PostID,
[Description],
row_number() over(partition by PostID order by [Version] desc) as rn
from PostContent
) as PC
on P.PostID = PC.PostID
where PC.rn = 1
答案 1 :(得分:1)
我认为您将PostId
表中的PostContent
作为外键,并且您希望以最高版本检索所有postId
。
select max(version),PostId from PostContent groupby PostId
答案 2 :(得分:1)
SELECT
p.[PostID],
pc.[Description]
FROM
[Post] AS p
INNER JOIN
[PostContent] AS pc
on p.PostID = pc.PostID
WHERE
pc.[Version] = (SELECT MAX([Version]) FROM PostContent WHERE PostID = p.PostID)