version 6.0 (Modified)
RELATE ONE SELECTION (manyTable; oneTable)
| 引数 | 型 | 説明 | |
| manyTable | テーブル | nテーブル (リレーションの開始元) | |
| oneTable | テーブル | 1テーブル (リレーションの参照先) |
説明
RELATE ONE SELECTION コマンドは、manyTableのレコードセレクションをもとにして、oneTableテーブルの新しいセレクションを作成し、その新しいセレクションの最初のレコードをカレントレコードとしてロードします。
このコマンドはmanyTableからoneTableへのリレートがある場合にのみ使用できます。RELATE ONE SELECTIONはリレートの複数レベルを対象に動作できます。manyTableとoneTableの間には複数のリレートテーブルがある場合があります。これらのリレートは、マニュアルリレートまたは自動リレートのどちらでも動作します。
例題
以下の例では、今日が請求書の支払期日であるすべての顧客を検索します。
以下は、[Invoices]テーブル内のレコードセレクションに基づき、[Customers]テーブルのセレクションを作成します:
CREATE EMPTY SET([Customers];"Payment Due") QUERY([Invoices];[Invoices]DueDate = Current date) While(Not(End selection([Invoices]))) RELATE ONE ([Invoices]CustID) ADD TO SET([Customers];"Payment Due") NEXT RECORD([Invoices]) End while
以下の手法ではRELATE ONE SELECTIONを使用して同じ結果を得ています:
QUERY([Invoices];[Invoices]DueDate = Current date) RELATE ONE SELECTION([Invoices];[Customers])
参照
QUERY, RELATE MANY SELECTION, RELATE ONE, セット.