このトピックでは、PHP 用 Tablestore SDK を使用して、SQL 文を実行することでデータをクエリする方法について説明します。
使用上の注意
SQL クエリ機能は、PHP V5.1.0 以後の Tablestore SDK でサポートされています。 SQL クエリ機能を使用する場合は、サポートされているバージョンの PHP 用 Tablestore SDK がインストールされていることを確認してください。
詳細については、「PHP 用 Tablestore SDK のバージョン履歴」をご参照ください。
前提条件
クライアントが初期化されていること。 詳細については、「Tablestore クライアントを初期化する」をご参照ください。
データをクエリするテーブルのマッピングテーブルが作成されていること。 詳細については、「マッピングテーブルを作成する」をご参照ください。
パラメーター
パラメーター | 説明 |
query | SQL 文。必要な機能に基づいて、このパラメーターを設定します。 |
例
次の例は、SELECT `PK0`, `boolean`, `long`, `geo` FROM `tableName` LIMIT 10; 文を使用して tableName テーブルのデータをクエリし、最大 10 行を返す方法を示しています。 システムは、クエリ文のリクエストタイプ、戻り値のスキーマ、および返された結果を返します。
$request = array(
'query' => 'SELECT `PK0`, `boolean`, `long`, `geo` FROM `tableName` LIMIT 10;',
);
$response = $this->otsClient->sqlQuery($request);
$sqlRows = $response['sql_rows'];
// すべてのデータマトリックスを出力します
$lines = '';
for ($i = 0; $i < $sqlRows->rowCount; $i++) {
$line = '';
for ($j = 0; $j < $sqlRows->columnCount; $j++) {
$line = $line . (is_null($sqlRows->get($j, $i)) ? "null" : $sqlRows->get($j, $i)) . "\t";
}
$lines = $lines . $line . "\n";
}
print $lines;
$sqlRows = $response['sql_rows'];