MySQL修改group concat的長度限制

2021-09-13 12:57:11 字數 1118 閱讀 1749

在mysql中,有個函式叫「group_concat」,平常使用可能發現不了問題,在處理大資料的時候,會發現內容被擷取了,

其實mysql內部對這個是有設定的,預設不設定的長度是1024,如果我們需要更大,就需要手工去修改

詳細說明如下:

修改方式:

set [session | global] group_concat_max_len = 10240;

可修改的引數如下

group_concat將某一字段的值按指定的字元進行累加,系統預設的分隔符是逗號,可以累加的字元長度為1024位元組。

先舉乙個簡單的例子

select group_concat(f_a) from t_one group by f_b;

按f_b進行分組查詢,將每組中的f_a進行累加。

修改預設的分隔符

select group_concat(f_a separator '_') from t_one group by f_b;

separator 是乙個關鍵字,後面跟著要進行分隔的字元

排序select group_concat(f_a order by f_a separator '_') from t_one group by f_b;

修改預設字元大小

1) 在mysql配置檔案中加上

group_concat_max_len = 102400 #你要的最大長度
2) 可以簡單一點,執行語句,可以設定作用範圍

set global group_concat_max_len=102400;

set session group_concat_max_len=102400;

和concat使用

group_concat預設返回的是blob大物件,可以使用concat,返回字串,還可以在返回的內容,在加入其它的資料。

歡迎訂閱「k叔區塊鏈」 - 專注於區塊鏈技術學習

segmentfault主頁:

修改mysql編 修改mysql編碼

第一種 通過mysql命令列修改 1 首先檢視資料庫字元編碼,命令為 show variables like collation show variables like character set 2 在命令列修改字元編碼 例如gb3212 set character set client gb23...

mysql 修改年齡 MYSQL 資料修改

mysql的資料修改 1 新增單列 a alter table 列表名 add 要加的引數名 如年齡 內容 如21 位於所有列的最下面 b alter table 列表名 add 要加的引數名 如年齡 內容 如21 tirst 新新增的這列位於最前面 c alter table 列表名 add 要加...

mysql 修改表 MySQL修改表

mysql修改表 說明 1.建立錶能做的事,修改表幾乎都能做,不推薦使用。2.修改表修改表的結構 3,大體來說,可以對欄位進行新增,刪除,修改 可以對索引進行新增,刪除 4.表的選項,通常都是修改,即使不寫任何乙個 新增乙個表的字段 alter table 表名 add column 新欄位名 字段...