一道sql笔试题

 现有表T1,(字段1   char(20),字段2   varchar(100).
      ----------------------
      字段1             字段2
      ----------------------
        1                   '内容1 '
        1                   '内容2 '
        1                   '内容3 '
        2                   '内容1 '
        2                   '内容2 '    

      =========================================
      想通过一条sql语句实现如下结果:
      ------------------------------
      字段1             内容
      -------------------------------
      1                   '内容1内容2内容3 '

      2                   '内容1内容2 '


答:

在mysql中利用group_concat()

表emp

id myname
1
1
1
2
2
3

sql

SELECT ID, GROUP_CONCAT(myname SEPARATOR '') AS content
FROM emp
GROUP BY id;


结果

IDcontent
1 我是谁
2 知道
3

附录:mysql中group_concat的用法

GROUP_CONCAT([DISTINCT] expr [,expr ...] [ORDER BY {unsigned_integer | col_name | expr} [ASC |DESC] [,col_name ...]] [SEPARATOR str_val])

参见http://blog.sina.com.cn/s/blog_4e808acf01009qna.html

http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值