【发布时间】:2019-06-18 18:47:13
【问题描述】:
CREATE TABLE Temp
(
ID Int IDENTITY,
Name Varchar(100)
)
INSERT INTO Temp
SELECT 'Elby'
UNION ALL
SELECT 'Eljo'
UNION ALL
SELECT 'Elsy'
UNION ALL
SELECT 'Elsy'
UNION ALL
SELECT 'Eljo'
UNION ALL
SELECT 'Elsy'
UNION ALL
SELECT 'Elsy'
我需要的输出是..
----------------------------------------
TotalRecordCount ID Name
----------------------------------------
7 5 Elby
7 6 Eljo
7 7 Elsy
7 8 Elsy
----------------------------------------
我的查询是...
SELECT TotalRecordCount,
ID,
Name
FROM (
SELECT *
FROM Temp
) Tab1
WHERE ID > 4
我的问题是,如何找到“TotalRecordCount”字段的值。它是表 'Temp' 的总计数。
我不能使用像 'SELECT COUNT(*) FROM Temp AS TotalRecordCount' 这样的查询,因为它不是单个表。
就像(SELECT * FROM Table1 JOIN TABLE2 ON (Table1.ID = Table2.ID) JOIN TABLE3 ON (TABLE2.ID = TABLE3.ID) JOIN TABLE4 ON (TABLE3.ID = TABLE4.ID).....)
为了您的理解,我使用了“temp”而不是整个查询。
【问题讨论】:
-
所以您想要一个与实际结果不同的总记录数?计算计数 Vs 时要小心。当你过滤时。
标签: sql sql-server