繁体   English   中英

SQL Server中临时表中的列数

[英]Count of Columns in temp table in SQL Server

有没有办法计算sql server中temp(#temptable)表中的列数?

SELECT COUNT(*)
FROM tempdb.sys.columns
WHERE object_id = object_id('tempdb..#mytemptable')

查询以获取指定表的列计数

SELECT Count(*) as cnt into #TempTable FROM INFORMATION_SCHEMA.Columns where TABLE_NAME = 'TableName'

查询以获取指定表的列名

SELECT COLUMN_NAME into #TempTable FROM INFORMATION_SCHEMA.Columns where TABLE_NAME = 'TableName'

查询以获取#TempTable的列数

SELECT COUNT(*) as Cnt FROM tempdb.sys.columns WHERE object_id = object_id('tempdb..#TempTable')

DROP table #TempTable

您可以使用此查询:

Declare @TableName NVarChar(150)
Declare @ColumnName NVarChar(150)
Set @TableName = ''
Set @ColumnName = ''

SELECT 
    t.name AS table_name,
    SCHEMA_NAME(schema_id) AS schema_name,
    c.name AS column_name
FROM sys.tables AS t
    INNER JOIN sys.columns As C ON t.OBJECT_ID = c.OBJECT_ID 
Where 
    ( T.name Like '%' + @TableName + '%' )
    And
    ( C.name Like '%' + @ColumnName + '%' ) 


SELECT 
    COUNT(C.Name) Count_Of_Columns,
    COUNT(Distinct T.Name) Count_Of_Tables
FROM sys.tables AS t
    INNER JOIN sys.columns As C ON t.OBJECT_ID = c.OBJECT_ID 
Where 
    ( T.name Like '%' + @TableName + '%' )
    And
    ( C.name Like '%' + @ColumnName + '%' ) 
SELECT COUNT(*) FROM temptable

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM