我的查询如下
BEGIN
WITH MyCTE
AS (
SELECT T.MusicAlbumTitle
,D.musicTitle
,D.mVideoID
,D.musicFileName
,T.ReleaseDate AS ReleasedDate
,D.MusicLength
,D.musicSinger
,D.MusicVideoID
,D.ExternalLink
,D.CoverImg
,ROW_NUMBER() OVER (
PARTITION BY D.MusicVideoID ORDER BY D.mVideoID
) AS row_num
FROM dbo.Music_Video T
JOIN dbo.Music_Video_Details D ON T.MusicVideoID = D.MusicVideoID
WHERE T.PortalID = @PortalID
AND T.CultureCode = @CultureCode
AND T.ComingSoon <> 1
GROUP BY T.MusicAlbumTitle
,D.musicTitle
,D.mVideoID
,T.ReleaseDate
,D.musicFileName
,D.MusicLength
,D.musicSinger
,D.MusicVideoID
,D.ExternalLink
,D.CoverImg
)
SELECT a.mVideoID
,a.MusicVideoID
,a.musicFileName
,a.MusicAlbumTitle
,a.ReleasedDate
,a.row_num
,a.CoverImg
,a.ExternalLink
,a.musicTitle
,a.MusicLength
FROM MyCTE a
WHERE row_num = 1
ORDER BY MusicVideoID DESC
END
我需要从最后一个选择语句中获得总行数。
这意味着正在选择的总行数。
或任何可能在这种情况下使用的想法
我怎样才能做到这一点 ..
最佳答案
请加COUNT(*) OVER()
在您的选择中,它返回被选为新列的总行数。
前任:
SELECT
*,
COUNT(*) OVER() AS [Total_Rows]
FROM YourTable
关于sql - sql查询中的总行数---sql server 2008,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18869718/