如何获取表中字段使用的最大大小

时间:2011-04-19 04:13:32

标签: sql tsql sql-server-2008

我有一个已设置为最大尺寸的字段。如何找到该字段占用的最大大小。

例如,如果记录是针对表TableA

FieldA

123
abcd
1234567

我需要知道哪一行占用的最大尺寸和尺寸

由于

Prady

3 个答案:

答案 0 :(得分:18)

LEN测试字符长度,例如“a”= 1个字符

select max(len(fieldA)) from tbl

DATALENGTH检查大小(以字节为单位),NVarchar每个字符占用2个字节

select max(datalength(fieldA)) from tbl

要获取表中具有FieldA中最大数据长度的所有行,

select *
from tbl join (select MAX(LEN(fieldA)) maxlen from tbl) l
    on l.maxlen = LEN(tbl.fieldA)

答案 1 :(得分:1)

SELECT TOP 1 WITH TIES * 
FROM tbl
ORDER BY len(tbl.fieldA) DESC

答案 2 :(得分:0)

您可以查询此sql

Select Character_Maximum_Length
From INFORMATION_SCHEMA.COLUMNS
Where TABLE_CATALOG Like 'DatabaseName' And TABLE_NAME Like 'TableName' And COLUMN_NAME Like 'FieldName'