concat_group的实现,group_concat函数

  concat_group的实现,group_concat函数

  我在公司做的第一个项目是做订单跟踪查询,里里外外连着十一个表。作为公司的菜鸡,我感到很困惑。

  要求之一是在一行中显示多行数据。原谅我的无知,但是我在那里找到了学习这个武器的项目负责人(他就是我心目中的SQL小王)

  完整的语法如下

  Group_concat([DISTINCT]要连接的字段[按ASC/DESC排序字段排序][分隔符分隔符])

  SELECT country_id,items_id,GROUP _ concat(DISTINCT article _ id ORDER BY article _ id desc分隔符-)FROM ` Hz _ article _ type ` GROUP BY country _ id LIMIT 0,30

  表格和数据如上。

  现在的要求是每个id都是一行,那个id的所有分数都显示在前台。

  舞台上的Group_concat!

  SELECTid,GROUP _ CONCAT(score)FROMtestgroupGROUPBYid

  你可以看到按照id分了三行,分数默认用逗号隔开,但是每个id都有重复的数据,然后就会重复。

  SELECTid,GROUP _ CONCAT(distinct score)FROMtestgroupGROUPBYid

  分类

  SELECTid,GROUP _ CONCAT(scoredorderbyscoredesc)FROMtestgroupGROUPBYid

  最后,你可以设置分隔符。

  SELECTid,GROUP _ CONCAT(score separator ;)FROMtestgroupGROUPBYid

  这样我们的数据按照id的不同分隔符放在一行的前台,可以消除对应的分隔符来划分分数字段,但是可能会出现分数数据类型过大的问题。

  达到需求目的!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: