フィールドがどのテーブルにあるのかを調べる最も簡単な方法は何ですか?私はちょうど新しい会社で働き始めましたが、DBのスキーマにはまだ精通していません。私は頻繁に私が検索する必要があるメトリックや次元があり、非常に大きなDBを持っているので非常に時間がかかるようです。データベースのフィールドを検索
これはあいまいな質問であり、最善の答えはありませんが、私は、この場合、人々が長年にわたって学んできたベストプラクティス、ヒント、トリックを探しています。
フィールドがどのテーブルにあるのかを調べる最も簡単な方法は何ですか?私はちょうど新しい会社で働き始めましたが、DBのスキーマにはまだ精通していません。私は頻繁に私が検索する必要があるメトリックや次元があり、非常に大きなDBを持っているので非常に時間がかかるようです。データベースのフィールドを検索
これはあいまいな質問であり、最善の答えはありませんが、私は、この場合、人々が長年にわたって学んできたベストプラクティス、ヒント、トリックを探しています。
あなたはそのためのsys.columns
を使用することができます。
SELECT
OBJECT_NAME(c.object_id)
FROM sys.columns c
WHERE c.name = <column_name>
私はフィールドを探していたとき、私は通常、次のクエリを使用します。
SELECT * FROM information_schema.COLUMNS c WHERE c.COLUMN_NAME LIKE 'search_field%'
選択したいDBがあることを確認してください。
あなたが探しているテーブルを見つけたら、DBダイアグラムを作成し、関連するフィールドを表示すると、既に持っているテーブルにそのテーブルを結合する方法を見ることができます。
[INFORMATION_SCHEMAビューに対するケース](http://sqlblog.com/blogs/aaron_bertrand/archive/2011/11/03/the-case-against-information-schema-views.aspx) –
フェリックスさん、これは大きいです記事。要するに、Jessicaとprdpの答えに問題はありますか? –
@Victor列が使用されているテーブルを検索するだけの場合は、これで問題はありません。しかし、いくつかの追加情報が必要な場合、 'INFORATION_SCHEMA'はそれらをすべて提供しません。 –
'select * from information_schema.columns where column_name = 'あなたのカラム名' ' –
このようなhttp://stackoverflow.com/questions/4849652/find-all-tables-containing-column-with-specified-name – Chris