どのケース/条件に基づいてもテーブルのカラム値を取得できる動的SQLクエリが必要です。私はレコードを更新しながらそれをしたい。そして私はcolumnの値を更新する必要があり、SQL ServerのInsertedテーブルとDeletedテーブルを使用しています。テーブルのすべての更新されたカラムを見つけるためのsqlクエリ
1つの列で正常に動作しているクエリを1つ作成しましたが、すべての列で機能する汎用クエリが必要です。
SELECT i.name
FROM inserted i
INNER JOIN deleted d ON i.id = d.id
WHERE d.name <> i.name
上記のクエリの助けを借りて、更新された場合は「名前」列の値を取得できます。しかし、1つのカラムに特有のことですが、カラム名を定義する必要がないテーブルのすべてのカラムに対して同じことをしたいので、それはジェネリック/ダイナミッククエリでなければなりません。
私は列の "INFORMATION_SCHEMA.COLUMNS"のPIVOTでもう1つの内部結合を追加することでこれを達成しようとしていますが、私たちがこれを行うかどうかはわかりません。
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME LIKE '%table1%'
は 'columns_updated'機能についてhttps://msdn.microsoft.com/en-us/library/ms186329.aspxを読みます。私はこれがあなたが探しているものだと思います。 –