このトピックでは、Python 用 Tablestore SDK を使用して、SQL 文を実行することでデータをクエリする方法について説明します。
前提条件
クライアントが初期化されていること。詳細については、「Tablestore クライアントを初期化する」をご参照ください。
データをクエリするテーブルに対してマッピングテーブルが作成されていること。詳細については、「マッピングテーブルを作成する」をご参照ください。
パラメーター
パラメーター | 説明 |
query | SQL 文。必要な機能に基づいてこのパラメーターを設定します。 |
例
select pk, long_value, double_value, string_value, bool_value from test_table limit 20 文を使用して test_table テーブルのデータをクエリし、最大 20 行を返します。システムは、SQL 文のリクエストタイプ、戻り値のスキーマ、および返された結果を返します。
def query_data(client):
query = 'select pk, long_value, double_value, string_value, bool_value from test_table limit 20'
rowlist, _, _ = client.exe_sql_query(query)
ret_map = collections.defaultdict(list)
for row in rowlist:
for tup in row.attribute_columns:
ret_map[tup[0]].append(tup[1])
for item in ret_map:
print(item, ret_map[item])
FAQ
詳細については、「SQL を使用してデータをクエリするときに「メインテーブルのスキャン行数がクォータを超えています。メインテーブルの行クォータは 100000 です」というエラーメッセージが表示される場合はどうすればよいですか。」をご参照ください。
詳細については、「SQL 文を実行してデータをクエリするときにデータ遅延が発生する場合はどうすればよいですか。」をご参照ください。
詳細については、「ワイルドカード検索を使用してデータをクエリするときに「[WILDCARD_QUERY] クエリのフィールド値の長さが 32 より長くなっています」という例外が発生する場合はどうすればよいですか。」をご参照ください。
関連情報
詳細については、「データのクエリ」をご参照ください。
詳細については、「SQL クエリの一般的なエラーをトラブルシューティングするにはどうすればよいですか。」をご参照ください。