介绍
在MSSQL中,如果想获取单表数据记录的个数,可以使用内置函数`COUNT()`来实现。
语法
SELECT COUNT(*)
FROM TableName
该语法中,`SELECT COUNT(*)`表示要返回结果集中的记录总数。
`FROM TableName`表示要统计的表名为`TableName`。
示例
假设我们有一张表`Person`,其结构如下:
CREATE TABLE Person
(
Id INT PRIMARY KEY,
Name NVARCHAR(50),
Age INT
)
我们可以使用以下语句来统计该表中数据记录的个数:
SELECT COUNT(*)
FROM Person;
注意事项
性能问题
对于大型数据库,使用`COUNT(*)`可能会影响性能,因为它需要扫描整个表并计数记录数。如果只是需要获取一个近似的记录数,可以选择使用`sys.dm_db_partition_stats`系统视图。
空值问题
`COUNT(*)`函数会包括所有记录,包括空值。如果要排除空值,可以使用`COUNT(column)`函数,其中`column`是非空字段名。例如,如果要统计`Person`表中`Age`字段非空的记录数,可以使用以下语句:
SELECT COUNT(Age)
FROM Person;
重复性问题
如果表中有重复记录,`COUNT(*)`和`COUNT(column)`函数都会将其计数。如果要排除重复记录,可以使用`DISTINCT`关键字。例如,如果要统计`Person`表中不重复的人名数量,可以使用以下语句:
SELECT COUNT(DISTINCT Name)
FROM Person;
结论
在MSSQL中,如果要获取单表数据记录的个数,可以使用内置函数`COUNT()`来实现。`COUNT(*)`函数将包括所有记录,包括空值和重复记录。如果需要排除空值或重复记录,可以使用`COUNT(column)`或`DISTINCT`关键字。