Sqlserver 多行合并为一行

多行合并为一行

表结构

子表结构如下:

在这里插入图片描述

父表结构如下:

在这里插入图片描述

由图可以看出子表和父表是通过父表ID进行关联的

我们要实现的效果如下,查询父表数据的同时,增加一列来展示父表下子商品信息。
在这里插入图片描述

完整代码如下

select top {0} * from ( select  row_number() over(order by OP.ID desc) as rownumber,OP.ID,OP.procode,OP.proname,COUNT (1) OVER () AS totalcount,goodsqty=( SELECT CONVERT(NVARCHAR(100),o1.商品名)+','
FROM (SELECT DISTINCT pid,(goodsname+'['+CONVERT(varchar(100), goodsqty)+']') 商品名 FROM  OMS_ProductsDetail WITH (NOLOCK) WHERE pid=OP.ID)o1 WHERE o1.pid=OP.ID 
FOR xml Path('')),protype,proprice,starttime,isinvaild,
                                case isinvaild when 0 then '生效中' else '已失效' end as invailddesc,
                                invaildtime
from OMS_Products OP  where 1=1 {1} ) x where  rownumber>{2}

代码解析

第一步:把商品信息和库存组合到一起
goodsqty=( SELECT CONVERT(NVARCHAR(100),o1.商品名)+','
FROM (SELECT DISTINCT pid,(goodsname+'['+CONVERT(varchar(100), goodsqty)+']') 商品名 FROM  OMS_ProductsDetail WITH (NOLOCK) WHERE pid=OP.ID)o1 WHERE o1.pid=OP.ID 
FOR xml Path(''))

这里用到了两个知识点
1、WITH (NOLOCK):其目的就是查询是不锁定表,从而达到提高查询速度的目的。
2、FOR xml Path(‘’):把数据转换为xml。实现一行展示多条信息

第二步:实现分页

2012以下版本:
使用以下方式进行分页:


select top (@pagrrsize) * from 
(
  select row_number() over(order by Tablekey) as rownumber, * from tableName
) A
where rownumber > (@pagesize * (@pageindex-1))

2012以上版本:

select * from tableName order by Tablekey

offset (@pagesize(@pageindex-1))  

rows fetch next (@pagesize) 

rows only

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/167592.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

不想花大价钱?这10款替代Axure的平替软件更划算!

Axure是许多产品经理和设计师进入快速原型设计的首选工具,但Axure的使用成本相对较高,学习曲线陡峭,许多设计师正在寻找可以取代Axure的原型设计工具,虽然现在有很多可选的设计工具,但质量不均匀,可以取代A…

壹基金为爱同行走进绿水青山,为乡村儿童送去健康水

壹基金为爱同行公益践行活动发起于2013年,截至2022年底,累计有63,319名线下参与队员,走过了8个城市。2023年,为爱同行的“壹家人”再次出发,走进“绿水青山就是金山银山”理念诞生地——浙江安吉余村,徒步18公里,为乡村儿童喝上足量、干净的饮用水筹集善款。本次活动获得了当地…

【Mysql】基于MySQL协议的抓包工具

mysql_sniffer 是一个基于 MySQL 协议的抓包工具,用来实时抓取 MySQL 服务端的请求,并格式化输出,输出内容包括访问时间、来源 IP、执行的SQL语句。 在进行MySQL 8.0升级时,了解新版本对SQL语法的改变和新增的功能是非常重要的。通…

AlmaLinux download

前言 一个开源的、社区拥有和管理的、永远免费的企业级Linux发行版,专注于长期稳定性,提供一个健壮的生产级平台。AlmaLinux操作系统是1:1二进制兼容RHEL和pre-Stream CentOS。 AlmaLinux download VersionAlmaLinux downloadAlmaLinux repo阿里云百…

定时关机软件哪个好?定时关机软件大盘点

在生活和工作中,我们可以使用定时关机软件来定时关闭电脑,以实现对电脑的控制。那么,定时关机软件哪个好呢?下面我们就来了解一下。 定时关机软件的作用 定时关机软件可以帮助用户在预设的时间自动关闭电脑。这对于那些需要在特…

golang学习笔记——使用结构

使用结构 有时,你需要在一个结构中表示字段的集合。 例如,要编写工资核算程序时,需要使用员工数据结构。 在 Go 中,可使用结构将可能构成记录的不同字段组合在一起。 Go 中的结构也是一种数据结构,它可包含零个或多个…

springboot上传文件后显示权限不足

前言: 最近一个老项目迁移,原本一直好好的,迁移后上传文件的功能使用不正常,显示文件没有可读取权限,这个项目并不是我们开发和配置的,由第三方开发的,我们只是接手一下。 前端通过api上传文件…

笔记56:深度循环神经网络

本地笔记地址:D:\work_file\DeepLearning_Learning\03_个人笔记\3.循环神经网络\第9章:动手学深度学习~现代循环神经网络 a a a a a a a a

不会制作电子期刊怎么办?新发现

​电子期刊已经成为当今社会中非常流行的一种出版形式,它不仅方便快捷,而且易于分享和传播。如果你一直想尝试制作电子期刊,但又不知道如何开始,那么不用担心!今天我将为你揭秘制作电子期刊的秘籍,让你轻松…

浅谈无线测温产品在菲律宾某工厂配电项目的应用

摘要:配电系统是由多种配电设备和配电设施所组成的变换电压和直接向终端用户分配电能的一个电力网络系统。由于配电系统作为电力系统的一个环节直接面向终端用户,它的完善与否直接关系着广大用户的用电可靠性和用电质量,因而在电力系统中具有…

linux高级篇基础理论五(用户安全,口令设置,JR暴力破解用户密码,NMAP端口扫描)

♥️作者:小刘在C站 ♥️个人主页: 小刘主页 ♥️不能因为人生的道路坎坷,就使自己的身躯变得弯曲;不能因为生活的历程漫长,就使求索的 脚步迟缓。 ♥️学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏:云计算技…

HarmonyOS4.0系列——01、下载安装配置环境搭建以及运行Hello World

HarmonyOS4.0应用开发 安装编辑器 这里安装windows版本为例 安装依赖 打开DevEco Studio 这八项全部打钩即可开始编写代码,如果存在x,需要安装正确的库即可 开发 点击Create Project 选择默认模板——next Model部分分为Stage和FA两个应用模型&…

抖音运营的必备10个工具,开启智能拓客引流新时代!

先来看实操成果,↑↑需要的同学可看我名字↖↖↖↖↖,或评论888无偿分享 一、引言 亲爱的知友们,您们是否对抖音运营有浓厚的兴趣和独特的见解?今天,我将为您介绍一些抖音运营必备的工具,帮助您在抖音上脱颖…

10个Logo设计资源网站,绝对值得你收藏!

看似简单的标志背后的设计过程一点也不简单。优秀的标志个性鲜明,视觉冲击力强,易于识别和记忆。小标志使品牌的理念和形象一目了然地传达给消费者,使消费者产生良好的品牌联想,从而引导和促进消费。 在设计LOGO时,我…

如何使用Docker部署Apache+Superset数据平台并远程访问?

大数据可视化BI分析工具Apache Superset实现公网远程访问 文章目录 大数据可视化BI分析工具Apache Superset实现公网远程访问前言1. 使用Docker部署Apache Superset1.1 第一步安装docker 、docker compose1.2 克隆superset代码到本地并使用docker compose启动 2. 安装cpolar内网…

【目标测距】雷达投影测距

文章目录 前言一、读取点云二、点云投影图片三、读取检测信息四、点云投影测距五、学习交流 前言 雷达点云投影相机。图片目标检测,通过检测框约束等等对目标赋予距离。计算消耗较大,适合离线验证操作。在线操作可以只投影雷达检测框。 一、读取点云 py…

纯CSS实现炫酷文本阴影效果

如图所示,这是一个文本阴影效果,阴影有多个颜色,鼠标悬停时文本阴影效果消失,文本回到正常的效果。让我们逐步分解代码,看看如何使用纯CSS实现这个效果的。 基于以上动图可以分析出以下是本次实现的主要几个功能点&am…

大健康产业的先行者「完美公司」携手企企通,推进企业采购供应链数字化进程

随着中国经济持续向好,消费升级和美妆步骤增加,美妆和个人护理产品已逐渐成为中国消费者的日用消费品,推动了护肤品和化妆品的销售额增速均超过10%,成为中国整个快速消费品市场中的一颗亮眼明珠。 据国家统计局数据显示&#xff0…

跨境出海人必备的营销指南:海外各大社交媒体的对比

随着全球数字化的加速,社交媒体已经成为人们交流、分享、获取信息的主要渠道。根据最新的全球数字报告 “DIGITAL 2022: GLOBAL OVERVIEW REPORT”显示,截至2022年,全球有46.2亿社交媒体用户,这个数字相当于世界总人口的58.4%。这…

【Echarts】Echarts在不同屏幕分辨率下不同配置

目录 1、图表横坐标:分辨率低的情况下,刻度标签旋转的角度,在类目轴的类目标签显示不下的时候可以通过旋转防止标签之间重叠。2、图表图例:在 legend 文字超过6个字的时候对文字做裁剪并且开启 tooltip 参考文章:1、使…