mysql 處理行轉列,一種野路子解決方案

在使用 mysql 實現行轉列的,要就是靜態的,本身手寫列,動態的太複雜容易出錯,爲了行轉列寫個存儲過程好像不必。mysql

mysql 關鍵字中有這麼幾個函數sql

 CONCAT_WS 合併列,能夠是多個字段,中間指定一個分隔符json

CONCAT_WS(separator,str1,str2,...)函數

GROUP_CONCAT 行轉列,多行轉成一列,指定須要轉的字段code

GROUP_CONCAT(expr)字符串

CONCAT 在查詢結果以前,或者以後添加一些字符class

CONCAT(str1,str2,...)後臺

而後我就寫出了這樣一個 sql select

select CONCAT('{',GROUP_CONCAT(CONCAT_WS(":",BIANMA,`NAME`)),'}') as json  from sys_department;

      將查詢結果集查詢成了一個鍵值對形式的 json數據,在後臺再用,Gson 將查詢出來的字符串進行解析,我仍是獲得了行轉列,查詢以後的結果集。數據

    野路子,你們須要的話能夠試一下。

相關文章
相關標籤/搜索