zoukankan      html  css  js  c++  java
  • FOR XML PATH做为数据表中单列或者多列的字符串拼接的方法,放到一列中去,很好用。

    先看看自己弄得例子,SELECT sName+',',hoppy+','  FROM student2 where hoppy='游泳' FOR XML PATH('')--PATH后面跟的是行标题,前面搜索到的结果是列标题

    这个是搜索游泳爱好的人的字符串连接起来,并加上爱好字符串,如果我想知道每项运动里面的人的爱好的人,和运动名称,那我可以写一个子查询去做哦。举例如下。

    select distinct hoppy ,(SELECT sName+',' FROM student2 where (hoppy=a.hoppy  )  FOR XML PATH(''))from student2 as a --by group--()--PATH后面跟的是行标题,前面搜索到的结果是列标题

    这句很好使很好用,哈哈哈

    吃饭 WANGYI,
    玩耍 WANGSAN,WANGER,
    游泳 WANGER,WANGSI,WANGYI,

    从别的地方看到还可以去掉最后一个逗号的用法,那就是嵌套一层哦。

    select B.hoppy,left(B.niupi,LEN(B.niupi)-1) from (select distinct hoppy ,(SELECT sName+',' FROM student2 where (hoppy=a.hoppy  )  FOR XML PATH(''))as niupi from student2 as a)AS B --by group--()--PATH后面跟的是行标题,前面搜索到的结果是列标题

    吃饭 WANGYI
    玩耍 WANGSAN,WANGER
    游泳 WANGER,WANGSI,WANGYI

    从网上搜到几篇文章,在这里记录下,可以参考。

    http://www.cnblogs.com/doubleliang/archive/2011/07/06/2098775.html

    http://www.cnblogs.com/repository/archive/2011/01/18/1938418.html

  • 相关阅读:
    代码之美
    一点对互联网的浅薄理解
    angularjs填写表单
    一种通用数据采集的schema定义形式
    maven常用命令
    find which process occupy the PORT
    Mac上安装boost开放环境
    codeforces 581B Luxurious Houses
    codeforces 599A Patrick and Shopping
    codeforces 597A Divisibility
  • 原文地址:https://www.cnblogs.com/ModBus/p/5002670.html
Copyright © 2011-2022 走看看