22,209
社区成员
发帖
与我相关
我的任务
分享
USE [tempdb]
GO
SELECT a.name ,
CASE a.precision
WHEN 0
THEN CASE a.is_ansi_padded
WHEN 1
THEN CONVERT(NVARCHAR(15), b.name + '('
+ CONVERT(NVARCHAR(10), a.max_length) + ')') --字符
WHEN 0
THEN b.name + '(' + CONVERT(NVARCHAR(10), a.max_length) + ')' --字符
END
ELSE CASE a.scale
WHEN 0 THEN b.name --整形
ELSE b.name + '(' + CONVERT(NVARCHAR(10), a.precision) + ','
+ CONVERT(NVARCHAR(10), a.scale) + ')' --实数
END
END AS typelength
FROM sys.columns a
LEFT JOIN sys.types b ON a.system_type_id = b.system_type_id
AND a.user_type_id = b.user_type_id
WHERE a.object_id = ( SELECT TOP 1
object_id
FROM sys.objects
WHERE type = 'U'
AND name LIKE '%temp%'
);
GO