複数のテーブルから複数の従業員時間データを返すクエリを実行しています。 従業員が1日8時間の日シフトを複数の顧客に課金するための有効な条件があります。 私はこれらが重複するためにインデックス列の値を返しますが、それはdoesnのCaseステートメントであるSELECTステートメントで3列重複行のインデックスを返すSQLのCaseステートメント
eg.
Emp Hrs Date Index
Fred 8 11/7 1
Fred 8 11/7 2
Fred 8 11/7 3
Fred 10 12/7 1
Fred 9 13/7 1
間で重複のためのユニークなインデックスを持つ「インデックス」欄を更新したいです一意の値を与える
case when count(*) over (partition by Emp, Hrs, Date) > 1
then 1
else 0
end
これを達成するには、条件文を条件ごとに含めることができますか?
なぜクエリ時にいつも決定できる値でテーブルを更新する必要がありますか?テーブルに触れるたびにこのメンテナンスを行う必要はありませんか?私はこの計算をテーブルに永久的な列としてではなく、ビューに入れます。 –