SQLServer如果指定列列值相同则用逗号拼接其他指定列数据 stuff函数+for xml path

2023-11-05

for xml path 就是将 sql 查询出来的内容以XML的格式显示出来

Stuff('查询字符串','开始位置(数字)','长度(数字)','需插入的字符串')

示例 :55替换abcd123字符串中的a

示例 :55替换abcd123字符串中的abcd

示例:55替换abcd123中的b 

由以上示例可知:stuff()函数 即将 指定字符串 替换 原始字符串的指定开始位置指定长度的字符

常见应用场景:如果指定列列值相同那么其他列列值合并(用逗号隔开)

示例表结构与数据如下:

统计分数一样的同学

步骤一:for xml path()+ group by  合并分数一样的同学的名字 ,此步骤我们会发现 名字前还有一个逗号

步骤二 :利用stuff()函数将查询结果中的逗号替换为' '

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQLServer如果指定列列值相同则用逗号拼接其他指定列数据 stuff函数+for xml path 的相关文章

随机推荐

  • 【k8s】k8s部署网络插件Calico、创建网络策略

    一 简介 01 calico简介 calico官网 flannel实现的是网络通信 calico的特性是在pod之间的隔离 通过BGP路由 但大规模端点的拓扑计算和收敛往往需要一定的时间和计算资源 纯三层的转发 中间没有任何的NAT和ove
  • String、StringBuffer与StringBuilder之间区别

    String StringBuffer StringBuilder String的值是不可变的 这就导致每次对String的操作都会生成新的String对象 不仅效率低下 而且浪费大量优先的内存空间 StringBuffer是可变类 和线程
  • Σ-Δ ADC的高精度数模转化,是如何实现的?

    以前接触过 ADC24位采样芯片 一直对其原理没有搞清楚 最近看到有对其原理讲解的文章 因此收集下来作为参考 我们在了解Delta Sigma ADC原理之前 先明确几个概念 1 量化噪声 下图中 蓝色斜线是连续的模拟信号 阶梯状波形是经过
  • Flask学习笔记_异步CMS(五)

    Flask学习笔记 异步CMS 五 1 环境 1 安装nvm 2 安装node 2 使用vue cli创建项目 3 安装相关插件 4 后台CMS开发 1 页面结构 1 app vue搭建结构 2 element icon组件的使用 3 ic
  • matlab rand randn 每次生成的随机数都一样的解决方案

    文章目录 问题说明 解决方案 例子 生成不重复的随机数 生成重复的随机数 结论 参考文献 问题说明 在Matlab应用中 我们经常需要用到随机数 比如rand randn 等函数 都是生成某一类随机数的函数 对于rand 函数来说 每一次启
  • HDR到底是什么?

    此文章转发自互联网 先感谢论坛好友 xiaoyuer520的耐心讲解及推荐这篇文章给我 我愿意分享给大家一起共同进步 谢谢 大家如果有像我一样的 看到文字多的帖子就看不下去 但又很想知道HDR是什么Dolby Vision和HDR10的区别
  • MySQL入门篇之Xtrabackup备份与恢复

    一 Xtrabackup介绍 MySQL冷备 mysqldump MySQL热拷贝都无法实现对数据库进行增量备份 在实际生产环境中增量备份是非常实用的 如果数据大于50G或100G 存储空间足够的情况下 可以每天进行完整备份 如果每天产生的
  • Vue2.7.14、vuecli@5.0.8 升级 vite@4.4.8

    项目背景 Vue2 7 14 vuecli 5 0 8 element ui 2 15 13 node14 18 3 本项目内部项目 不涉及CDN加速 vite安装 pnpm add vite 4 4 8 D 入口文件index html
  • Qt自定义窗口圆角

    Qt设置圆角 在Qt中一般设置窗口圆角有两种方式 QSS 通过paintEvent自绘窗口 QSS 设置圆角 这种设置圆角的方式相对来说比较灵活 但我们设置基类窗口 最外层窗口 用qss就很不方便 会收到后续qss的影响 另外当圆角设置大小
  • Docker 安装教程

    目录 一 离线安装 一 CentOS 离线安装 一 下载地址 1 选择系统的型号 选择linux CentOS 2 上传文件到CentOS 服务器 二 开始安装 1 解压压缩包 2 解压得到的文件复制到 usr bin目录下 3 注册doc
  • 想要好看的壁纸图片,用这个网站一键解决,不用爬虫也能实现爬虫效果,一键爬取图片网站所有的图片

    想要好看的壁纸图片 用这个网站一键解决 不用爬虫也能实现爬虫效果 一键爬取图片网站所有的图片 网站的地址 https extract pics 演示例子 图片网站 https www sohu com a 582693827 1211239
  • eclipse创建maven项目报Could not calculate build plan: Plugin org.apache.maven.plugins:maven-war-plugin:2.

    创建maven项目eclipse报下面错误 Could not calculate build plan Plugin org apache maven plugins maven war plugin 2 2 or one of its
  • 宋浩高等数学笔记(十二)无穷级数

    完结 宋浩笔记系列的最后一更 之后会出一些武忠祥老师的错题 笔记总结 10月份就要赶紧做真题了
  • C++多态----虚函数初级剖析

    多态说白了就是多种形态 在C 中不少的函数都可以实现多种形态 例如函数重载 运算符重载等等 这种重载一般都是在编译阶段时就已经确定了形态 这种多态 我们一般称之为静态多态 那么既然静态多态是在编译阶段就已经确定好了形态 那么动态多态 自然也
  • 项目有大量的spring日志,log配置level无效的解决方案

    思路 log配置文件的level无效 是因为启动spring的时候 log尚未加载 解决方案 1 web xml中的log监听器的启动顺序早于spring监听器 2 log配置文件生效后 可根据日志种类设置level进行拦截 参考 web
  • 黑暗精灵修改为国内源

    第1步 修改 etc pacman d mirrorlist vim etc pacman d mirrorlist 1 第2步 修改 etc pacman d blackarch mirrorlist vim etc pacman d b
  • python 安装whl文件

    python 安装whl文件 使用场景 在terminal中 通过 pip install 命令进行第三方模块安装时 由于网络获其他原因会使得第三方模块下载失败 导致安装失败 此时 我们可以先通过下载网址将第三方模块包手动下载到本地 再手动
  • Linux系统下 查找已安装软件的命令

    1 find 使用find查找文件的所在路径 find 查找路径 查找参数 在根目录下查找以 conf结尾的文件 find name conf 2 ps 通过查找进程的方法找到对应的包的路径 ps ef grep mongo 也可以简写成
  • mysql5.7.13+VS3013 源代码阅读调试

    之前写Java 对C make cmake都不是很熟 所以参考了以下这些前辈写的博客 最后成功搭建了mysql5 7 13 VS3013调试环境 自己总结了需要需要注意的几点 Windows VS2012环境下编译调试MySQL源码 一 W
  • SQLServer如果指定列列值相同则用逗号拼接其他指定列数据 stuff函数+for xml path

    for xml path 就是将 sql 查询出来的内容以XML的格式显示出来 Stuff 查询字符串 开始位置 数字 长度 数字 需插入的字符串 示例 55替换abcd123字符串中的a 示例 55替换abcd123字符串中的abcd 示