SQL Server2008R2を使用しています。この列が配置されている列名とテーブル名を取得したいと思います。そして、指定されたタイプで表示したいこと。例:すべてのtinyint列を表示したいとします。結果は次のようになります。
ColumnName|TableName
orderID |Orders
clientID |Orders
refID |discounts
それを行うためのクエリを書くことは可能ですか?
SQL Server2008R2を使用しています。この列が配置されている列名とテーブル名を取得したいと思います。そして、指定されたタイプで表示したいこと。例:すべてのtinyint列を表示したいとします。結果は次のようになります。
ColumnName|TableName
orderID |Orders
clientID |Orders
refID |discounts
それを行うためのクエリを書くことは可能ですか?
system
このデータを取得するには、テーブルを使用します。
SELECT OBJECT_NAME(c.OBJECT_ID) TableName
, c.name ColumnName
FROM sys.columns c
JOIN sys.types t
ON c.user_type_id=t.user_type_id
WHERE t.name = 'tinyint'
ORDER BY c.OBJECT_ID;
これに関する追加の詳細は見つけることができます:
これを試して..
select ao.name objectname,ac.name columnname,t.name usertypename from sys.all_columns ac inner join sys.types t
on ac.user_type_id = t.user_type_id
inner join sys.all_objects ao
on ac.object_id = ao.object_id
and ao.type = 'U'
where t.name ='tinyint'