SQLSERVER,一条SQL语句返回查询结果集和全表记录数

select * from Tableselect count(*) from Table一条SQL能解决上述需求吗?
2025-03-24 19:57:05
推荐回答(5个)
回答1:

你可以只用这一条SQL
select * from Table

然后用mysql_num_rows() 获取记录数

回答2:

select * from Table
compute count(字段)
--或者
select *,COUNT(*) over() As 记录总数 from 表

回答3:

sql server 和 oracle通用:

select t1.*,(select count(*) from table_name) as all_rows
from table_name t1;

回答4:

select count(1) from Table 这样比较好

回答5:

SELECT
QUOTENAME(SCHEMA_NAME(sOBJ.schema_id)) + '.' + QUOTENAME(sOBJ.name) AS [TableName]
, SUM(sdmvPTNS.row_count) AS [RowCount]
FROM
sys.objects AS sOBJ
INNER JOIN sys.dm_db_partition_stats AS sdmvPTNS
ON sOBJ.object_id = sdmvPTNS.object_id
WHERE
sOBJ.type = 'U'
AND sOBJ.is_ms_shipped = 0x0
AND sdmvPTNS.index_id < 2
GROUP BY
sOBJ.schema_id
, sOBJ.name
ORDER BY [TableName]
GO