早速ですが、人ごとに兼務組織(3階層)とその他属性の新旧比較を行い、相違フラグを立てたいと思っています。
旧組織テーブル
ID:101 氏名:青山 恭子 連番:1 組織1:AAA 組織2:FF 組織3:H 職位:課長
ID:101 氏名:青山 恭子 連番:2 組織1:BBB 組織2:RR 組織3:K 職位:課長
ID:101 氏名:青山 恭子 連番:3 組織1:
ID:101 氏名:青山 恭子 連番:4 組織1:
ID:101 氏名:青山 恭子 連番:5 組織1:
新組織テーブル
ID:101 氏名:青山 恭子 連番:1 組織1:AAA 組織2:AAA 組織3:AAA 職位:課長
ID:101 氏名:青山 恭子 連番:2 組織1:BBB 組織2:AAA 組織3:AAA 職位:課長
ID:101 氏名:青山 恭子 連番:3 組織:
ID:101 氏名:青山 恭子 連番:4 組織:
ID:101 氏名:青山 恭子 連番:5 組織:
新旧テーブルのユニークなIDと連番をキーに、組織・その他属性の文字列を連結させた連結フィールドをつくり、
この新旧の連結フィールの文字列を比較日、レコードごとに変更の有無をフラグ立て(変更フラグ)しています。
この時、人ごとにひとつでも変更フラグが立った場合、人全体に変更フラグ2を立てたいと思っています。
現状、クエリの演算フィールドで人ごとにDsumで判定フラグの論理値(変更あり:0/変更なし:-1)を加算し、
-6以外であれば、人に対し、変更フラグ2を立てるという方法を試していますが、D系の関数が遅くて使い物になりません。
高速化するためのSQLについてご相談させてください。
まず、現在のSQLを提示する事は可能でしょうか?
次に、テーブルを説明して下さい。組織1と組織2の違いは?連番1組織1と連番2組織1の違いは?旧組織テーブルに新しい連番を追加する場合と新組織テーブルに新しい連番を追加する場合がありそうだけど、使い分けのルールは?
りんごさんも確認されてますが、詳細が分からないので、具体的な回答は難しいので、とりあえず高速化の一般論を提示しておきます。
どのようなことがしたいのかによって、上記のどれがいいのか、あるいは、上記のいくつかを組み合わせるがいいのか、変わってきます。