2

列が計算列式に参加しているかどうかを検索したいと思います。

私はこれを思いついた

SELECT 
    (select name 
     from sys.columns 
     where column_id = sys.sql_expression_dependencies.referencing_minor_id 
     and object_id = sys.sql_expression_dependencies.referencing_id) as [dependant_column]
FROM sys.sql_expression_dependencies
WHERE referencing_minor_id > 0 
    and referencing_class = 1 
    and referenced_class = 1 
    and object_name(referencing_id) = 'trns1'
    and referenced_minor_id = (select column_id 
                           from sys.columns 
                           where name = 'class1' 
                           and OBJECT_NAME(object_id) = 'trns1')

助けてください。

4

1 に答える 1

3

sys.computed_columnsテーブルを確認します。

select name, definition 
from sys.computed_columns

これは非常によく似た質問です。SQLServer:データベースから取得可能な計算列の定義?

おそらくもう少しキックがあります。

于 2012-11-01T08:17:22.460 に答える