2

こんにちは、みんな。ここでの私の最初の質問(多くのグーグル/検索の後)。

私はFileMakerを使用して、多数のメーリングリストスプレッドシートを単純なデータベースに移行する作業を行っています。1つの障害は、レコードが別のテーブルに存在するかどうかに基づいて、レコードに非アクティブのフラグを立てることができるようにする必要があることです。

すなわち。シンプルにするには:

  • table1には、名前、アドレス、およびzipがあります。
  • table2にはアドレスとzipがあります。
  • table1のアドレス/zipの組み合わせがtable2にも存在する場合は、 table1で非アクティブとしてフラグを立てる必要があります。

前もって感謝します。

4

2 に答える 2

0

まず、アドレスとZIPを1つの文字列に結合するaddressZIPのような計算フィールドを作成します。

次に、表1で、計算フィールドを作成します。

これを入力してください

If(IsEmpty(FilterValues(List(table2 :: addressZIP); addressZIP))、 ""、 "FLAG")。

それはうまくいくと思いますが、私は前向きではありません。私は現在FMを搭載したコンピューターを使用していないため、テストできません。

于 2013-01-04T18:22:18.233 に答える
0

サブクエリを実行して table1 ID を取得し、IN 句で更新できます。これは UPDATE FROM でも実行できますが、このアプローチの方が理解しやすいと思います。サブクエリの実行を開始して確認し、後で更新に含めることができます。

UPDATE
    table1
SET
    flaged = 1
WHERE
    id IN(
          SELECT
            t1.id
          FROM
            table1 t1, table2 t2
          WHERE
            t1.address = t2.address AND t1.zip = t2.zip
    )
于 2013-01-03T22:29:46.133 に答える