建立查詢
您可以對/queries
端點發出POST要求,以建立新查詢。
API格式
POST /queries
要求
以下請求會建立新查詢,並在承載中提供SQL陳述式:
curl -X POST https://platform.adobe.io/data/foundation/query/queries \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"dbName": "prod:all",
"sql": "SELECT account_balance FROM user_data WHERE user_id='$user_id';",
"queryParameters": {
user_id : {USER_ID}
}
"name": "Sample Query",
"description": "Sample Description"
}
以下請求範例會使用現有查詢範本ID建立新查詢。
curl -X POST https://platform.adobe.io/data/foundation/query/queries \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"dbName": "prod:all",
"templateID": "f7cb5155-29da-4b95-8131-8c5deadfbe7f",
"name": "Sample Query",
"description": "Sample Description"
}
屬性 | 說明 |
---|---|
dbName | 您正在建立SQL查詢的資料庫名稱。 |
sql | 您要建立的SQL查詢。 |
name | SQL查詢的名稱。 |
description | SQL查詢的說明。 |
queryParameters | 鍵值配對,取代SQL陳述式中的任何引數化值。 只有在您提供的SQL中使用引數取代時,才需要 if。 將不會對這些索引鍵值配對執行任何值型別檢查。 |
templateId | 既有查詢的唯一識別碼。 您可以提供此項而不是SQL陳述式。 |
insertIntoParameters | (選擇性)如果此屬性已定義,則此查詢將轉換為INSERT INTO查詢。 |
ctasParameters | (選擇性)如果此屬性已定義,此查詢將轉換為CTAS查詢。 |
回應
成功的回應會傳回HTTP狀態202 (已接受)以及您新建立查詢的詳細資料。 一旦查詢完成啟動並成功執行,state
將從SUBMITTED
變更為SUCCESS
。
{
"isInsertInto": false,
"request": {
"dbName": "prod:all",
"sql": "SELECT * FROM accounts;",
"name": "Sample Query",
"description": "Sample Description"
},
"state": "SUBMITTED",
"rowCount": 0,
"errors": [],
"isCTAS": false,
"version": 1,
"id": "4d64cd49-cf8f-463a-a182-54bccb9954fc",
"elapsedTime": 0,
"updated": "2020-01-08T21:47:46.865Z",
"client": "API",
"userId": "{USER_ID}",
"created": "2020-01-08T21:47:46.865Z",
"_links": {
"self": {
"href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
"method": "GET"
},
"soft_delete": {
"href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
"method": "PATCH",
"body": "{ \"op\": \"soft_delete\"}"
},
"cancel": {
"href": "https://platform.adobe.io/data/foundation/query/queries/4d64cd49-cf8f-463a-a182-54bccb9954fc",
"method": "PATCH",
"body": "{ \"op\": \"cancel\"}"
}
}
}
您可以使用
_links.cancel
的值來取消您建立的查詢。