2011-04-19 136 views
7

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

例如,如果记录是表TableA的

FieldA 

123 
abcd 
1234567 

我需要知道哪一行占据了最尺寸,什么大小

感谢

Prady

回答

17

LEN测试字符的长度,例如“一个” = 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
SELECT TOP 1 WITH TIES * 
FROM tbl 
ORDER BY len(tbl.fieldA) DESC 
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' 
相关问题