mysql之GROUP CONCAT修改預設長度

2021-10-09 06:09:24 字數 1118 閱讀 5905

今天使用 group_concat 聚合其中某一列的時候竟然報錯了,具體報錯資訊:row 3168 was cut by group_concat(), time: 14.477000s.

sql 是:

select rong_liang, yong_liang,

`level

`, adapt_niandu, perrfect_niandu

, oil_type, fadongji, mid, group_concat(mid separator ';'

)from datum_copy4

where

(rong_liang !=

''and rong_liang !=

''and oil_type !=

''and perrfect_niandu !=

''and

`level`!=

''and fadongji !='')

group

by rong_liang, yong_liang,

`level

`, adapt_niandu, perrfect_niandu, oil_type, fadongji;

如圖所示:

以為group_concat 有預設長度之說,預設是1024,一半情況是用不到那麼長的,偏偏有時候就用到了…可通過語句檢視:

select @@session.group_concat_max_len

;select @@global.group_concat_max_len

;

設定長度:

-- 擴大十倍或者自定義啦

setglobal group_concat_max_len=

102400

;set

session group_concat_max_len =

102400

;

修改方法二:

修改配置檔案。

在mysql配置檔案(my.ini)中加上

group_concat_max_len = -1

-1為最大值或填入你要的最大長度

Mysql分組資料合併group concat用法

group concat用法 預設用法 select group concat vaccine name as do accinename from t vaccine where id in select vaccine id from t dog vaccine where dog id 1 1...

MySQL 多行資料合併 GROUP CONCAT

表結構及資料 drop table if exists course create table course id int 11 not null,name varchar 50 default null comment 姓名 course name varchar 50 default null ...

MySQL 多行資料合併 GROUP CONCAT

表結構及資料 drop table if exists course create table course name varchar 255 character set utf8 collate utf8 general ci default null,course name varchar 25...