お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

行の取得

Catalyst Data Storeのテーブルから単一行または複数行のデータを取得できます。これらのコードスニペットで使用されているtable_serviceの参照は、テーブルインスタンスまたはテーブルメタのいずれかです。

単一行の取得

get_row()メソッドを使用して、テーブルから単一行を取得できます。以下のコードスニペットに示すように、このメソッドに行の一意のRowIDを渡す必要があります。以下で使用されているコンポーネントインスタンスdatastore_serviceおよびテーブルインスタンスtable_serviceの詳細については、それぞれのヘルプセクションを参照してください。

使用するパラメータ

パラメータ名 データ型 定義
rowID String 必須パラメータです。詳細を取得する行のIDを格納します。
copy
 # 1行を取得する
datastore_service = app.datastore()
table_service = datastore_service.table("CITY")
row_data = table_service.get_row(5249000000032385)

サンプルレスポンスを以下に示します:

copy
{
  CREATORID: "2136000000006003",
  MODIFIEDTIME: "2021-08-17 13:02:11:184",
  CREATEDTIME: "2021-08-16 16:29:10:499",
  CITYNAME: "Pune",
  ROWID: "5249000000032385"
}

ページネーションによる全行の取得

get_paged_rows()関数を使用してコードにページネーションを組み込むことで、Data Storeのテーブルからすべての行のデータを取得できます。ページネーションにより、イテレーションを通じてテーブルの行をバッチまたはページ単位で取得できます。

このイテレーションは、以下のコードに示すように、すべての行が取得されるまで実行されます。これは単純なif条件で検証されます。テーブルは一意のテーブル名で参照できます。

たとえば、行を100件ずつのバッチで個別のページとして取得する場合、各ページで取得する最大行数の変数を定義してカウントを指定できます。以下のサンプルコードではmax_rowsを100に設定しています。

注意: maxRowsパラメータは任意です。この値が指定されない場合、SDK呼び出しはデフォルトで1ページあたり200行を返します。

さらに、レスポンスデータに後続のデータ取得を認可するトークン文字列が含まれます。このトークンはnext_tokenを通じて取得でき、以下のコードに示すように、後続のイテレーション時にnext_tokenの値として渡します。ループの最初の実行時、next_token文字列の値はNoneに設定されます。次のレコードセットは、レスポンスデータのmore_recordsを通じて取得されます。

注意: ページネーションはNode.js SDK v2.1.0アップデートから利用可能になりました。Node.js SDKの旧バージョンでは利用できません。

使用するパラメータ

パラメータ名 データ型 定義
next_token String 必須パラメータです。後続のデータ取得を認可するレスポンスデータからのトークンを格納します。
max_rows Numeric 任意パラメータです。行を取得するバッチの数を保持します。
copy
datastore_service = app.datastore()
table_service = datastore_service.table("Aliens")
def getMyPagedRows(next_token=None, more_records=True):
    rows = table_service.get_paged_rows(next_token, max_rows=100)
    more_records = rows['more_records']
    if not more_records:
        return None
    next_token = rows['next_token']
    return getMyPagedRows(next_token, more_records)
 getMyPagedRows()

more_recordsパラメータがtrueに設定されている場合、サンプルレスポンスを以下に示します:

copy
{
    "status": 200,
    "content": [
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:24:855",
            "CITYNAME": "New York",
            "CREATEDTIME": "2022-01-11 18:18:24:855",
            "ROWID": "5249000000032385"
        },
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:25:117",
            "CITYNAME": "Houston",
            "CREATEDTIME": "2022-01-11 18:18:25:117",
            "ROWID": "5249000000032386"
        },
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:25:120",
            "CITYNAME": "Chicago",
            "CREATEDTIME": "2022-01-11 18:18:25:120",
            "ROWID": "5249000000032387"
        }
    ],
    "message": "OK",
    "more_records": true,
    "next_token": "{{token}}"
}

more_recordsパラメータがfalseに設定されている場合、サンプルレスポンスを以下に示します:

copy
{
    "status": 200,
    "content": [
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:43:556",
            "name": "San Diego",
            "CREATEDTIME": "2022-01-11 18:18:43:556",
            "ROWID": "5249000000032385"
        },
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:43:557",
            "name": "Phoenix",
            "CREATEDTIME": "2022-01-11 18:18:43:557",
            "ROWID": "5249000000032386"
        },
        {
            "CREATORID": "3359000000006003",
            "MODIFIEDTIME": "2022-01-11 18:18:43:568",
            "name": "Seattle",
            "CREATEDTIME": "2022-01-11 18:18:43:568",
            "ROWID": "5249000000032387"
        }
    ],
    "message": "OK",
    "more_records": false
}
情報: 上記の操作を実行するために必要な権限レベルについては、SDKスコープの表を参照してください。

最終更新日 2026-03-30 13:40:30 +0530 IST