データベース名でsys.columnsとsys.tablesを結合する



Joining Sys Columns



解決:

ランディミンダーの答えは最も正しいものです。ただし、sys.columnsとsys.tablesを続行する場合は、object_idでそれらを結合します。

col.object_id = tab.object_idのsys.columnscol inner joinsys.tablesタブからtab.name、col.nameを選択します。

これを使用して、sys.columnsテーブル自体からテーブル名を取得できます。



sys.columnsからobject_name(object_id)、nameを選択します 

通常、sys.columnsまたはsys.tables(または任意のシステムテーブル)に直接クエリを実行することは望ましくありません。 INFORMATION_SCHEMAビューを使用する必要があります。これらのビューは、リリースごとに変更される可能性のあるシステムテーブルをクエリするANSI標準の方法です。 INFORMATION_SCHEMAビューは、少なくとも破壊的な方法では変更されません。

SELECT COLUMN_NAME、* FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = AND TABLE_SCHEMA =

もちろん、WHERE句はここではオプションであり、すべてのテーブルなどのすべての列を表示するために省略できます。