sqlserver如何统计表记录行数与列的最大长度?
来源:网络收集 点击: 时间:2024-05-28打开SQL Server Management Studio管理工具,连接上数据库,输入如下SQL语句创建一张测试表
CREATE TABLE (
(40) NOT NULL,
(50) NULL,
NULL,
(38,4) NULL
CONSTRAINT PRIMARY KEY CLUSTERED
(
ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON
) ON

使用如下SQL语句,插入几行测试数据
insert into (Id, Col1, Col2, Col3) values(NEWID(), 第一行第一列, 50, 18.5);
insert into (Id, Col1, Col2, Col3) values(NEWID(), null, null,null);
insert into (Id, Col1, Col2, Col3) values(NEWID(), 第三行, 5000, 18.5684);

查询表中现有的数据
select * from ;

使用count统计表中的记录行数
select count(*) from ;
-- 同样是统计表中记录行数,据说count(1)要快一点
select count(1) from ;

使用count与where统计表中满足条件的记录行数
select count(1) from where ISNULL(Col2, ) ;

使用datalength(列)计算一个列的长度
select DATALENGTH(id), DATALENGTH(Col1), DATALENGTH(Col2)
, DA TALENGTH(Col3)
from
从结果可以看出:
1、对于varchar类型,有多少字符datalength就等于多少
2、对于nvarchar类型,一个汉字算2个长度
3、对于数字类型,返回的是占用的最大数字的空间字节数

使用max(datalength(列))计算一个列的最大长度
select max(DATALENGTH(id)), max(DATALENGTH(Col1))
, max(DATALENGTH(Col2)), max(DATALENGTH(Col3))
from

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_851574.html