Sql Server中怎么实现行数据转为列显示

发布时间:2022-04-20 13:44:40 作者:iii
来源:亿速云 阅读:359

本篇内容主要讲解“Sql Server中怎么实现行数据转为列显示”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Sql Server中怎么实现行数据转为列显示”吧!

场景:行数据的某列值想作为字段列显示

1、效果如下

Sql Server中怎么实现行数据转为列显示

2、解决方案

使用pivot进行行转列,以及结合分组

3、代码如下

select * from(
    select DeptName,InputCode
    from FWD_Department
    group by DeptName,InputCode
) as a
pivot(
  max(InputCode) for DeptName in([随访中心],[全院],[家庭化产房],[妇科二],妇科一)
) piv

创建表:

USE [test]
GO

/****** Object:  Table [dbo].[FWD_Department]    Script Date: 2022/3/11 14:50:39 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[FWD_Department](
	[id] [int] IDENTITY(1,1) NOT NULL,
	[DeptName] [varchar](50) NOT NULL,
	[InputCode] [nchar](10) NULL,
 CONSTRAINT [PK_one] PRIMARY KEY CLUSTERED 
(
	[DeptName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO

 表记录添加:

insert into one(DeptName,InputCode)
values('随访中心','SFZX')

insert into one(DeptName,InputCode)
values('全院','QY')

insert into one(DeptName,InputCode)
values('家庭化产房','JTHCF')

insert into one(DeptName,InputCode)
values('妇科二','FKE')

insert into one(DeptName,InputCode)
values('妇科一','FKY')

到此,相信大家对“Sql Server中怎么实现行数据转为列显示”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. SQL Server内幕之数据行的结构
  2. SQL Server基础之行数据转换为列数据

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sql server

上一篇:C++的struct与class怎么用

下一篇:openstack云计算keystone架构怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》