1. 程式人生 > >mysql使用group_contact有個很坑的

mysql使用group_contact有個很坑的

我在工作中有個定時任務查詢訂單什麼什麼的,然後我用的group_contact將訂單號進行拼接,發現拼出來的字串總是到最後一條資料不完整,我可能就猜到了可能這個訂單太多了被截取了,果然把結果取出來,發現只有長1024,一百度,原來是group_contact預設長度為1024,如果非要全部顯示的話,就需要去修改MySQL的配置檔案:

#需要設定的長度
group_concat_max_len = 5120

第二種:

可以使用sql語句設定:

SET GLOBAL group_concat_max_len=5120;
SET SESSION group_concat_max_len=5120;

但是我想的是還是算了,我一次性少查一點吧,就用limit限制一下,結果emmmm。。。不生效>.<

咋肥事.....

又百度...

找到了overflow(對於程式設計師,這是個好東西呀,基本有問題找他都能解決,最大困難全英文,沒事,幸好我英語一般般)

答案也就是在group_contact外層再加一個函式進行擷取substring_index

substring_index(group_concat(s.title SEPARATOR ','), ',', 3) as skills