データの選択

select ステートメントは、データベースからデータをフェッチまたは操作します。

  • すべての選択ステートメントではレコードをフェッチするためテーブル変数を使用します。 この変数は、select 文を実行する前に宣言する必要があります。

  • select ステートメントは、レコードを 1 つだけ、またはフィールドをフェッチします。 複数のレコードをフェッチまたは移動したりするには、next ステートメントまたは while select ステートメントを使用できます。

    • next ステートメントは、テーブルの次のレコードをフェッチします。 選択ステートメントの前に、ステートメントがある場合、エラーが発生します。 ステートメントを使用する場合、firstOnly 検索オプションを使用しません。
    • while select ステートメントを使用して複数のレコードを移動する方がより適切です。
  • select ステートメントの結果はテーブル バッファ変数に返されます。

  • 選択ステートメントのフィールド リストを使用すると、これらのフィールドでは、テーブル変数が使用されます。

次の例では、CustTable テーブルの最初の行のすべての列をフェッチし、その行の AccountNum 列に値を出力します。

CustTable custTable;
select firstonly custTable; //this is a short notation for 'select firstonly * from custTable;'  
info("AccountNum: " + custTable.AccountNum);

次の例では、CustTable テーブルで各行の AccountNum 列の値を出力します。

CustTable custTable;
while select custTable
{
    info("AccountNum: " + custTable.AccountNum);
}

次の例では、select ステートメントによって返された最初の 2 つの行の AccountNum 列の値を出力します。

CustTable custTable;
select custTable;
info("AccountNum: " + custTable.AccountNum);

next custTable;
info("AccountNum: " + custTable.AccountNum);

詳細については、select ステートメントを参照してください。