少し前のことですが、「IDの一覧出したくてgroup_concatしたのだけど、結果がおかしいです」と聞かれまして、たぶんみんな一回は経験することのような気がするので書いておきます。 MySQLのgroup_concatというのは集約関数の一つで、複数のレコードの値を、区切り文字を入れながら文字列結合するというものです。 group_concatの結果が短い気がする こんなクエリ書く人いないかもしれませんが、「全ユーザーIDをランダムな順番でコンマ区切りで取得したい」という狙いで以下のクエリを実行しました。 mysql> select group_concat(id order by rand()) as user_ids from user\G *************************** 1. row *************************** user_ids:
![MySQLのgroup_concatの結果が短い気がするのは環境変数で制限されているから。](https://cdn-ak-scissors.b.st-hatena.com/image/square/e1a9e5b15bf4716db933d2d5569237f3aabd024f/height=288;version=1;width=512/https%3A%2F%2Fblog.katty.in%2Fwp-content%2Fuploads%2F2013%2F08%2F48866beca16c19ce957a066313dc3540.png)