SQL竖表转横表Json数据
1.数据准备
create table Vertical(
Id int ,
ProjectName varchar(20),
ProjectValue int
)
insert into Vertical values (101,'旅游',100)
insert into Vertical values (101,'牧业',101)
insert into Vertical values (101,'工业',102)
insert into Vertical values (101,'软件',103)
insert into Vertical values (102,'旅游',200)
insert into Vertical values (102,'牧业',201)
insert into Vertical values (102,'工业',202)
insert into Vertical values (102,'软件',203)
select *from Vertical
--返回格式:
[{'Id':'101','旅游':'100','牧业':'101','工业':'102','软件':'103'},{'Id':'102','旅游':'200','牧业':'201','工业':'202','软件':'203'}]
Create proc VerticaltoHorizontal
@tbname varchar(20),
@returnmsg varchar(1000) out
as
begin
declare @id int
declare @name varchar(20)
declare @value int
declare @strjson varchar(1000)
declare @idintentity int =0
declare v2h cursor
for select id,ProjectName,projectvalue from vertical
open v2h
fetch v2h into @id,@name,@value
while @@FETCH_STATUS=0
begin
if(@idintentity=0)
set @strjson='{''Id'':'''+CAST(@id as varchar(10))+''','''+@name+''':'''+CAST(@value as varchar(10))+''''
else
begin
if (@idintentity= @id)
begin
set @strjson=@strjson+','''+@name+''':'''+CAST(@value as varchar(10))+''''
end
else
begin
set @strjson =@strjson+'},'
set @strjson=@strjson+'{''Id'':'''+CAST(@id as varchar(10))+''','''+@name+''':'''+CAST(@value as varchar(10))+''''
end
end
set @idintentity= @id
fetch v2h into @id,@name,@value
end
close v2h
deallocate v2h
set @returnmsg ='['+ @strjson+'}]'
end
go
备注:竖转横 的表的实例很多,我建议还是在程序中处理比较好
SQL竖表转横表Json数据的更多相关文章
- SQL竖表转横表 / 横表转竖表
竖表转横表 竖表结构: Name Course Grade 张三 语文 75 张三 数学 80 张三 英语 90 李四 语文 95 李四 数学 55 转换后横表结构: Name 语文 数学 英语 张三 ...
- 【转】纵表、横表互转的SQL
纵表.横表互转的SQL 原文1:http://takkymj.iteye.com/blog/751401 横表就是普通的建表方式,如一个表结构为: 主键.字段1.字段2.字段3... 如果变成纵表 ...
- sql 语句纵表变横表
现把转换方法列举如下: 1.纵表转横表: 纵表结构 TableA Name Course Grade 张三 语文 75 张三 数学 80 张三 英语 90 李四 语文 95 李四 数学 55 横表结构 ...
- 纵表、横表互转的SQL
纵表.横表互转的SQL By:大志若愚 1.建表: 纵表结构 Table_A create table Table_A ( 姓名 ), 课程 ), 成绩 int ) ) ) ) ) ) 姓名 课程 ...
- [No0000128]SQL纵表与横表互转
1.纵表转横表: 纵表结构:Table1 转换后的横表结构: Sql示例代码: select username, sum(case Course when '语文' then Grade else 0 ...
- sql中纵表变横表
纵表格式如图所示: 查询sql语句如下: ),content)content,Date from SummerChina ' 变成横表如图所示: 纵表变横表sql语句如下: select Time, ...
- SQL Server之纵表与横表互转
1,纵表转横表 纵表结构 Table_A: 转换后的结构: 纵表转横表的SQL示例: SELECT Name , SUM(CASE WHEN Course = N'语文' THEN G ...
- JAVA 根据数据库表内容生产树结构JSON数据
1.利用场景 组织机构树,通常会有组织机构表,其中有code(代码),pcode(上级代码),name(组织名称)等字段 2.构造数据(以下数据并不是组织机构数据,而纯属本人胡编乱造的数据) List ...
- 扩展JQUERY 表单加载JSON数据
$.fn.extend({ //表单加载json对象数据 setForm : function (jsonValue) { var obj = this; $.each(jsonValue, func ...
随机推荐
- CF 1281B Azamon Web Services
原题链接:http://codeforces.com/problemset/problem/1281/B 题目大意: 给你两个字符串 s 和 c ,最多经过一次变换,使s的字典序小于c,输出变换后的s ...
- 基于baseline、svd和stochastic gradient descent的个性化推荐系统
文章主要介绍的是koren 08年发的论文[1], 2.3部分内容(其余部分会陆续补充上来).koren论文中用到netflix 数据集, 过于大, 在普通的pc机上运行时间很长很长.考虑到写文章目 ...
- ftp文件上传下载命令
介绍:从本地以用户wasqry登录的机器1*.1**.21.67上通过ftp远程登录到ftp服务器上,登录用户名是lte****,以下为使用该连接做的实验. 查看远程ftp服务器上用户lte**** ...
- 阿里云数据库再获学术顶会认可,一文全览VLDB最新亮点
一年一度的数据库领域顶级会议VLDB 2019于当地时间8月26日-8月30日在洛杉矶圆满落幕.在本届大会上,阿里云数据库产品团队浓墨登场,不仅有多篇论文入选Research Track和Indust ...
- Python实现单神经元分类图片的训练
1.加载包和数据 numpy is the fundamental package for scientific computing with Python. h5py is a common pac ...
- 通过media媒体查询设置ie7/8样式、使用media判断各机型、手淘flexible.js
@media all and (min-width:1280px){ /* 所有设备宽度大于1280干嘛干嘛嘞... */ body{ background:#f00; } } @media (min ...
- 微信小程序——页面滑动事件
wxml: <view id="id" class = "ball" bindtap = "handletap" bindtouchs ...
- Extjs4 的一些语法 持续更新中
一.给GridPanel增加成两行toolbar tbar: { xtype: 'container', layout: 'anchor', defaults: {anchor: '0'}, defa ...
- springboot核心技术(四)-----Docker、数据访问、自定义starter
Docker 1.简介 Docker是一个开源的应用容器引擎:是一个轻量级容器技术: Docker支持将软件编译成一个镜像:然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使 用这个镜 ...
- nginx 访问ssl 的 pem 遇到的权限问题
nginx 开启失败,日志记录 访问 ssl 的 pem 文件 fopen:Permission denied 权限问题,查看文件权限,目录权限,正常. google 后得知原来是一个 SELinu ...