SQLを使用して正確な編集を行うことはできません。 Unix diff
などのアルゴリズムが必要です ファイル上(行レベルで機能します)。文字レベルでは、アルゴリズムはレーベンシュタイン距離
のバリエーションになります。 。 diff
の場合 ニーズに合わせて、ダウンロードし、ストアドプロシージャを記述して呼び出し、データベースで使用できます。これはかなり高価になります。
異なるバージョンを維持するというあなたの質問の部分ははるかに簡単です。 2つの列を追加しますEffDate
およびEndDate
各レコードに。 EndDate is NULL
を検索すると、最新バージョンを取得できます。 いつでもアクティブなバージョンを見つけます。 Merge
一般に、このようなテーブルを維持するのに役立ちます。