mysql之concat concat_ws group_concat

concat、concat_ws、group_concat都可以用来连接字符串。

concat和concat_ws用来连接同一行中不同列的数据,group_ws用来连接同一列的数据。

格式如下:

  • concat(str1, str2, ...)
  • concat_ws(separator, str1, str2, ...)
  • group_concat([distinct] 列名  [order by 列名 desc/asc] [separator 分隔符])

 group_concat一般和group by 子句配合使用,将group by 产生的同一分组中的值连接起来,返回一个字符串结果。

  • select name, group_concat(id) from tb1 group by name   -- 将相同name的所有id连接起来
  • select name, group_concat(id order by id desc separator  '-' ) from tb1 group by name   -- 将相同name的所有id连接起来,并降序排序,连接符为-
  • select name, group_concat(concat_ws('-', id, score)) from tb1 group by name  -- 将相同name的所有id和score连接起来

猜你喜欢

转载自www.cnblogs.com/xiaochongc/p/9986485.html