跳到主要內容 跳至補充內容

使用 JSON 檔案

Qlik Cloud 中的 JSON 檔案載入資料。

您可以從 JSON 檔案載入資料,就像 Qlik Cloud 支援的任何其他資料檔案。如需詳細資訊,請參閱 從檔案載入資料

您也可以透過 LOAD 命令在載入指令碼中從 JSON 檔案載入資料。例如︰

LOAD * from [lib://DataFiles/xyz.json] (json);

如需詳細資訊,請參閱 Load

LOAD 陳述式可以在欄位清單中列出所需欄位,而不是使用萬用字元,藉此篩選或重新排序欄位。例如:LOAD a.b, b.c FROM […] (json);。不存在的欄位不會觸發錯誤。

從 JSON 載入巢狀物件

如果值是物件,則該物件的成員用於透過附加欄位延伸表格。每個欄位名稱都是父項和子項的組合。例如,下面的 JSON 包含巢狀物件:


[
	{"name":{"first":"Alice","last":"Stephenson"}},
	{"name":{"first":"Bob"}},
	{"name":{"last":"Roberts"}}
]

透過 LOAD * FROM [lib://DataFiles/example.json] (json); 載入時,這會產生以下資料表格:

巢狀資料表格範例
name.first name.last
Alice Stephenson
Bob null
null Roberts

載入多個表格

必須使用多個 LOAD 陳述式載入具有陣列的 JSON 資料。陣列的內容經過雜湊,並作為連結表格的關鍵使用。

例如,下面的 JSON 有多個表格。


[
	{"a":[1,2],"b":[3,4]},
	{"a":[2,3],"b":[4,5]}
]

這需要使用以下 LOAD 陳述式載入:

LOAD * FROM [...] (json); LOAD * FROM [...] (json, table is [/*/a]); LOAD * FROM [...] (json, table is [/*/b]);

table is 規範是子表格迭代器的路徑。這會產生以下資料表格:

表格 1
%Key_a %Key_b
<hash of [1,2]> <hash of [3,5]>
<hash of [2,3]> <hash of [4,5]>
表格 2
%Key_a a..@1
<hash of [1,2]> 1
<hash of [1,2]> 2
<hash of [2,3]> 2
<hash of [2,3]> 3
表格 3
%Key_b b..@1
<hash of [3,5]> 3
<hash of [3,5]> 4
<hash of [4,5]> 4
<hash of [4,5]> 5
資訊備註

如果您的資料包含多個內容相同的陣列,請在子表格 LOAD 陳述式中使用關鍵字 DISTINCT。例如︰LOAD DISTINCT * FROM [lib://DataFiles/Sales.json] (json, all tables);

預覽陣列

載入資料時可以使用欄位清單來預覽陣列,否則這些陣列會作為子表格載入。例如

[
	{"pos":[1,2,3]},
	{"pos":[4,5,6]}
]

這可以使用以下 LOAD 陳述式載入:

LOAD pos.0 AS x, pos.1 AS y, pos.2 AS z FROM […] (json);.

這會產生以下表格。

x y z
1 2 3
4 5 6

載入所有表格

您可以指定所有表格而不是表格是,以載入所有表格。例如︰

LOAD * FROM [lib://DataFiles/Sales.json] (json, all tables);

限制

JSON 檔案有下列限制:

  • JSON 中的單一 LOAD 陳述式最多可以載入下列內容:

    • 5,000 個欄位

    • 1,000 個表格

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!