位置: 编程技术 - 正文

SQL 合并多行记录的方法总汇(sql合并多条记录某一个字段)

编辑:rootadmin
--1. 创建表,添加测试数据 CREATE TABLE tb(id int, [value] varchar()) INSERT tb SELECT 1, 'aa' UNION ALL SELECT 1, 'bb' UNION ALL SELECT 2, 'aaa' UNION ALL SELECT 2, 'bbb' UNION ALL SELECT 2, 'ccc' --SELECT * FROM tb /**//* id value ----------- ---------- 1 aa 1 bb 2 aaa 2 bbb 2 ccc (5 row(s) affected) */ --2 在SQL只能用自定义函数实现 ----2.1 创建合并函数fn_strSum,根据id合并value值 GO CREATE FUNCTION dbo.fn_strSum(@id int) RETURNS varchar() AS BEGIN DECLARE @values varchar() SET @values = '' SELECT @values = @values + ',' + value FROM tb WHERE id=@id RETURN STUFF(@values, 1, 1, '') END GO -- 调用函数 SELECT id, VALUE = dbo.fn_strSum(id) FROM tb GROUP BY id DROP FUNCTION dbo.fn_strSum ----2.2 创建合并函数fn_strSum2,根据id合并value值 GO CREATE FUNCTION dbo.fn_strSum2(@id int) RETURNS varchar() AS BEGIN DECLARE @values varchar() SELECT @values = isnull(@values + ',', '') + value FROM tb WHERE id=@id RETURN @values END GO -- 调用函数 SELECT id, VALUE = dbo.fn_strSum2(id) FROM tb GROUP BY id DROP FUNCTION dbo.fn_strSum2 --3 在SQL/SQL中的新解法 ----3.1 使用OUTER APPLY SELECT * FROM (SELECT DISTINCT id FROM tb) A OUTER APPLY( SELECT [values]= STUFF(REPLACE(REPLACE( ( SELECT value FROM tb N WHERE id = A.id FOR XML AUTO ), '<N value="', ','), '"/>', ''), 1, 1, '') )N ----3.2 使用XML SELECT id, [values]=STUFF((SELECT ','+[value] FROM tb t WHERE id=tb.id FOR XML PATH('')), 1, 1, '') FROM tb GROUP BY id --4 删除测试表tb drop table tb /**//* id values ----------- -------------------- 1 aa,bb 2 aaa,bbb,ccc (2 row(s) affected) */

推荐整理分享SQL 合并多行记录的方法总汇(sql合并多条记录某一个字段),希望有所帮助,仅作参考,欢迎阅读内容。

SQL 合并多行记录的方法总汇(sql合并多条记录某一个字段)

文章相关热门搜索词:sql语句多行合并成一行,sql多行合并成一行 oracle,sql多行合并成一行 逗号连接,SQL 合并多行记录的相同字段值,sql语句多行合并成一行,sql多行合并成一行多列,SQL 合并多行记录的相同字段值,sql合并多行数据,内容如对您有帮助,希望把文章链接给更多的朋友!

批处理 动态sql 1.DECLARETYPEref_cursor_typeISrefCURSOR;v_mycursorref_cursor_type;TYPEid_listISTABLEOFinteger;TYPEname_listISTABLEOFvarchar2();v_tabidid_list:=id_list();v_tabnamename_list:=name_list();sql_strvarc

SQL Server 的逻辑查询处理步骤 最近我则刚刚收到了微软最有价值专家项目组寄来的该书的SQLServer英文版本-《InsideMicrosoftSQLServer:T-SQLQuerying》(

在sp_executesql中使用like字句的方法 declare@LikeSqlnvarchar();--定义一个like变量,如果是存储过程,此处可以存储过程的参数set@LikeSql=‘someword%';--把LikeSql变量赋值,可以赋值成'%xxxxxxxxxxxx%'decl

标签: sql合并多条记录某一个字段

本文链接地址:https://www.jiuchutong.com/biancheng/349098.html 转载请保留说明!

上一篇:sqlserver 2000 远程连接 服务器的解决方案(sqlserver远程连接设置)

下一篇:批处理 动态sql(sqlserver批处理)

  • 出口退税哪些资料要留底
  • 金蝶软件可以实现一键报税吗
  • 资产负债表债务法核算所得税
  • 法人转让股权后还是法人吗
  • 人力资源行业税务政策
  • 行政单位设计费计入哪个科目
  • 文化事业建设费怎么申报
  • 固定资产改变用途进项转出
  • 企业支付宝里面的钱可以随时提到个人银行卡吗
  • 固定资产累计折旧完了怎么办
  • 增值税发票备注栏不写可以吗
  • 没领税票会产生税吗
  • 往来款可以作为投资款吗
  • 佣金发票可以抵扣吗
  • 企业所得税税率2022年最新税率表
  • 进项税留抵需要转出吗
  • 股东利润分配预缴税款
  • 环保税优惠问题
  • 企业投资股票取什么名字
  • 贴息收据税前扣除是什么
  • 路由器怎么重置网络
  • 外贸出口换汇成本怎么计算
  • 开发票时已交的税金怎么做帐?
  • php怎么做网页
  • PHP:Memcached::getMultiByKey()的用法_Memcached类
  • php数组函数,选班长
  • php读取word
  • 撤销银行账户
  • kb4580325更新
  • 2021前端面试题目100及最佳答案
  • 购买低值易耗品现金流量计入
  • 楼房贷款需要什么手续没有银行流水怎么办
  • 统一社会保险费征收
  • php邮件发送类
  • 融资租入的机器设备属于什么科目
  • 当深度学习遇上Web开发:Spring和OpenAI如何实现图片生成?
  • chage -l命令
  • 装饰工程公司施工一般包括哪些内容?
  • 报销职工福利
  • python复制文件的代码
  • pd python
  • 销售费用福利费和管理费用福利费
  • 管理费用主要包括
  • 增值税直接计算法间接计算法举例
  • 苹果macos安装
  • 红冲上月发票都附什么附件
  • 内账需要哪些单据
  • 租入的房子再出租用交房产税吗?
  • 行政事业单位拨付给企业的财政补助款用交增值税吗
  • 当月发生的费用下月支付
  • 如果没有抵扣要交多少税
  • 小规模附加税优惠政策最新2023
  • 利润都为负数时增长比例怎么算
  • 企业商品销售收入确认条件
  • 购方收到红字发票怎么开
  • 会计账簿的扉页只需填列账簿启用日期和经管人员一览表
  • 长期待摊费用是非流动资产吗
  • linux/mac安装mysql忘记密码的解决办法
  • sql游标实例
  • mysql80安装配置教程
  • 一次性关闭所有窗口的快捷键
  • 安装windows server 2008 r2
  • 电脑被攻击了怎么修复
  • win10一直显示正在配置更新
  • linux服务器dns配置
  • 怎么清空windows8电脑里全部东西
  • 从零开始咋样
  • python 网络编程培训
  • 深入理解中国式现代化论文
  • Javascript new Date().valueOf()的作用与时间戳由来详解
  • unity3d颜色
  • jquery导入
  • 代扣代缴申报表哪里查询
  • 扬州国家税务学院在哪个区
  • 历年房产税
  • 国税系统如何查询发票
  • 公司完税证明去哪里打印
  • 如何打印个税缴纳记录
  • 车辆购置税是国税吗
  • 艾地盟预混料怎么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设