クエリの実行

Prev Next

VPC環境で利用できます。

クエリを実行します。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /api/v2/queries

リクエストヘッダ

Data Query APIで共通して使用されるヘッダの詳細は、Data Queryのリクエストヘッダをご参照ください。

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
query String Required 実行クエリ文
executionParameters Array Optional クエリ実行パラメータ
timeout Integer Optional クエリ実行の最大時間(秒)
  • 1~60 (デフォルト: 20)
isReuse Boolean Optional クエリ結果を再利用するか
  • true | false (デフォルト)
    • true: 再利用
    • false: 再利用しない
reuseMaxAge Integer Conditional クエリ結果の再利用最大有効期間(分)
  • 1~10080 (デフォルト: 60)
  • isReusetrueの場合、必ず入力
  • <例> 60を入力した場合: クエリ実行時から60分以内に返すことのできる有効な結果が存在する場合、その結果を再利用
dataSource String Optional クエリ実行データソース名
database String Optional クエリ実行データベース名
projectId Integer Optional クエリ実行プロジェクト ID

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://kr.dataquery.naverncp.com/api/v2/queries' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
            "query": "SELECT * FROM public_data.korea_trade_insurance.exchange_rate where currency_code = ? and date > ?",
            "executionParameters": [
                "CNY",
                "2023.01.01"
            ],
            "timeout": 20,
            "isReuse": true,
            "reuseMaxAge": 60
}'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
id String - 実行 ID
columns Array - カラム情報: Column
data Array - クエリの実行結果
  • 各行がColumnのカラム順序と1対1マップされた配列で返す
  • 複合型(row)カラムの場合、{フィールド名=値}形式の文字列でシリアル化
    • 2個以上返す場合はコンマ「,」で区切る
offset Long - ページ照会に使用するオフセット
  • isFinishedfalseの場合、次のページ照会のリクエストに使用
isFinished Boolean - 全ページ照会が完了しているか
  • true | false
    • true: 完了 (次のページが存在しない)
    • false: 完了していない (次のページが存在)

Column

Columnの説明は次の通りです。

フィールド タイプ 必須の有無 説明
name String - カラム名
type String - カラムタイプ
typeSignature Object - カラムタイプ情報
typeSignature.rawType String - 基本タイプ名
typeSignature.arguments Array - タイプパラメータリスト: ClientTypeSignatureParameter

ClientTypeSignatureParameter

ClientTypeSignatureParameterの説明は次の通りです。

フィールド タイプ 必須の有無 説明
kind String - タイプパラメータの種類
  • TYPE | NAMED_TYPE | LONG | VARIABLE
value Union - タイプパラメータ値
  • Object | Number | String
    • Object: kindTYPEまたはNAMED_TYPEの場合(複合型)
    • Number: kindLONGの場合
    • String: kindVARIABLEの場合
value.fieldName Object - 複合型のフィールド名オブジェクト
value.fieldName.name String - フィールド名
value.typeSignature Object - 複合型のフィールドタイプオブジェクト
value.typeSignature.rawType String - 基本タイプ名
value.typeSignature.arguments Array - タイプパラメータリスト: ClientTypeSignatureParameter

レスポンスステータスコード

Data Query APIで共通して使用されるレスポンスステータスコードの詳細は、Data Queryのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "id": "fc6b118d-****-****-****-f350f9881f24",
    "columns": [
        {
            "name": "currency_code",
            "type": "varchar",
            "typeSignature": {
                "rawType": "varchar",
                "arguments": [
                    {
                        "kind": "LONG",
                        "value": 2147483647
                    }
                ]
            }
        },
        {
            "name": "date",
            "type": "varchar",
            "typeSignature": {
                "rawType": "varchar",
                "arguments": [
                    {
                        "kind": "LONG",
                        "value": 2147483647
                    }
                ]
            }
        },
        {
            "name": "trade_rate",
            "type": "varchar",
            "typeSignature": {
                "rawType": "varchar",
                "arguments": [
                    {
                        "kind": "LONG",
                        "value": 2147483647
                    }
                ]
            }
        },
        {
            "name": "us_conversion_rate",
            "type": "varchar",
            "typeSignature": {
                "rawType": "varchar",
                "arguments": [
                    {
                        "kind": "LONG",
                        "value": 2147483647
                    }
                ]
            }
        }
    ],
    "data": [
        [
            "CNY",
            "2023.1.9",
            "184.56",
            "0.1456"
        ],
        [
            "CNY",
            "2023.1.17",
            "183.87",
            "0.149"
        ],
        [
            "CNY",
            "2023.1.30",
            "182.33",
            "0.1482"
        ],
        [
            "CNY",
            "2023.2.8",
            "184.89",
            "0.1472"
        ],
        ...
    ],
    "offset": 4845,
    "isFinished": true
}