どうもタダシです。
今日はFileMakerで重複する値を削除(ユニークな値のみ残す)する方法を紹介します。
FileMaker を始めたばかりの頃は、入力値の制限でユニークな値を指定した別テーブルにインポートすることで重複を取り除いていました。
でもFileMaker Cloudだとネットを経由している分、スピードが遅い。。何か良い方法はないかと探していました。
そこで見つけた方法が自己リレーションによる重複の削除です。
それでは解説します。
こんな感じで動物フィールドの重複する値を判定したい。
テーブルを見ていきます。
ここでのポイントは
①必ず主キー(ユニークな値)が設定されていること。
②重複チェックという計算フィールドを設定する事。
次にリレーションシップグラフを見てみましょう。
このように動物テーブルオカレンスを複製し、重複を判定したいフィールド同士をリレーションで繋げます。
ここでは動物(フィールド)の重複を判定したいので動物(フィールド)と動物(フィールド)を繋げます。
次に重複チェックフィールドに設定した計算内容を見ていきます。
ここでのポイントは【次のコンテキストからこの計算式を評価する】というプルダウンで、リレーションシップグラフで左側に配置したテーブルオカレンスを指定して下さい。ここでは動物(テーブルオカレンス)を指定します。
そして計算内容はこんな感じです。
動物(テーブルオカレンス)の主キーと動物2(テーブルオカレンス)の主キーが同じであれば”一意”、そうでなければ”重複”と返します。
以上のようにすれば重複するは値を判定することができます。
あとは重複する値を検索して削除してやればオッケーです。
ぜひ試してみてください。
コメント