2016-06-27 35 views
0

我一直在嘗試使用具有MariaDB v10.1.12實例的動態列。MariaDB COLUMN_JSON查詢返回二進制

首先,我把下面的查詢:

INSERT INTO savedDisplays (user, name, body, dataSource, params) VALUES ('Marty', 'Hey', 'Hoy', 'temp', COLUMN_CREATE('type', 'tab', 'col0', 'champions', 'col1', 'averageResults')); 

凡PARAMS'類型被定義爲一個斑點,就像文檔建議。 該查詢被接受,表已更新。如果我COLUMN_CHECK結果,它告訴我很好。

但是,當我嘗試選擇:

"SELECT COLUMN_JSON(params) AS params FROM savedDisplays; 

我得到一個{類型:「緩衝」,數據:數組}包含二進制還給我,而不是{「類型」:「標籤」, 「col0」:「冠軍」,「col1」:「averageResults」}我期待。

編輯:我可以用COLUMN_GET就好了,但我需要的PARAMS領域內的每個列,我需要首先檢查type屬性知道什麼樣的和多少列有在JSON/PARAMS領域。我可以讓它仍然工作,但這需要多個查詢,而不是隻有一個。

任何想法?

回答

0

嘗試:

SELECT CONVERT(COLUMN_JSON(params) USING utf8) AS params FROM savedDisplays 

在MariaDB的10本作品在每個表:在node.js的

SELECT CONVERT(COLUMN_JSON(COLUMN_CREATE('t', text, 'v', value)) USING utf8) 
    as json FROM test WHERE 1 AND value LIKE '%12345%' LIMIT 10; 

輸出

[ TextRow { json: '{"t":"test text","v":"0.5339044212345805"}' } ]