在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 新欄位名 字段...