把表的竖向列变为横向一字段值(或 竖向变横向)
例:
表名: tb
内容:
aa bb cc
12 a 0
13 b 0
15 c 0
得到结果:
@sql = '12,13,15'
--方法一
declare @sql varchar(1000)
set @sql = ''
select @sql = @sql + t.aa + ',' from (select aa from tb) as t
set @sql='select result = ''' + left(@sql , len(@sql) - 1) + ''''
exec(@sql)
--方法二
declare @output varchar(8000)
select @output = coalesce(@output + ',' , '') + aa from tb
print @output
--纵向表变成横向表(以sysobjects表为例)
declare @sql varchar(8000)
select @sql = 'select xtype,'
select @sql=@sql + 'Max(case name when '''+ name + ''' then id else null end)''' + name
+ ''',' from (select * from sysobjects where xtype='u' ) a
select @sql = left(@sql,len(@sql) -1 )
select @sql=@sql + ' from sysobjects where xtype=''u'' group by xtype'
print(@sql)
---分组字符串相加 (以sysobjects表为例, 是否包含自动增加的列)
Create function f_columns(@a varchar(100))
returns varchar(5000)
as
begin
declare @return varchar(5000)
select @return=''
select @return=@return+name+',' from syscolumns where id=@a
set @return = left(@return,len(@return)-1)
return @return
end
GO
select name,(select name from syscolumns where id=a.id and COLUMNPROPERTY(a.id,name,'IsIdentity')=1) fName,dbo.f_columns(id) allfield from sysobjects a where xtype='u' and name<>'dtproperties'
把表的竖向列变为横向一字段值(或 竖向变横向)相关推荐
- mysql 显示各列的数据类型命令_mysql中查看库中某个表的所有列和对应的字段类型...
执行命令: select COLUMN_NAME ,DATA_TYPE from information_schema.COLUMNS where table_name = '表名' and tabl ...
- mysql横向纵向_mysql怎么更改纵向变横向排列
本篇文章将介绍如何使用sql语句将表数据从纵向展示改为横向展示. mysql中,查询纵向转横向可用case when语句,具体步骤如下: 第一步,创建数据表,我这里已创建完成,以下是展示数据图. 第二 ...
- mysql中avg函数如果有空值_对于 AVG 函数,如果列中所有行的值都是 null,那么 AVG 函数返回的值是( )...
[判断题]偶联剂是具有某些特定基团的化合物,它能通过化学和物理的作用将两种性质差异很大,原本不易结合的材料较牢固地结合起来 [多选题]滑石粉的片状结构使得滑石粉填充塑料的某些性能得到较大的改善,可提高 ...
- oracle 添加默认值列,Oracle 11g增加列,并带默认值的新特性
永久链接:http://www.ixdba.com/html/y2007/m08/159-oracle11g-add-column.html 老和尚在他的blog中描述了了这个问题,我这里做一个详细的 ...
- python按某列拆分excel表格_利用Python+Pandas实现从一个excel表中提取列形成新表
简要 利用python实现把一个工作表中的某些列,和其中单独的一列,提取成为一个个新表. 如图(处理前)蓝色部分是需要保留的列,红色是需要一项一项分出来作为单独表格的列. 其中,第一行的名字是用的回车 ...
- MYSQL数据库(九)- 修改数据表名称、列名称
目录 一.修改列定义(modify col_name) 二.修改列类型(modify col_name) 三.修改列名称(change col_name) 三.修改表名称(rename table a ...
- MySQL 学习笔记(4)— 组合查询、子查询、插入数据、更新/删除表数据、增加/删除表中的列以及重命名表
1. 组合查询 1.表的加减法 表的加法,即求 product 和 product2 的并集,UNION 运算会除去重复的记录 SELECT product_id, product_name FROM ...
- 【数据库】sqlite中的限制:数据库大小、表数、列数、行数、参数个数、连接数等
目录 一.参考网址 二.详解 1.查看.设置sqlite限制命令.limit 2.SQLite中的限制汇总 1)字符串或BLOB的最大长度 2)最大列数 3)SQL语句的最大长度 4)联接中的最大表数 ...
- C#合并两张表结构相同(列数和列类型都相同)的表
DataTable appendDataTable=new DataTable(); 这个合并的大前提是两张表的结构相同且列的类型也必须相同 否则在赋值时就会出现异常. for (int i = 0; ...
最新文章
- 奇妙的滚动css+html
- Highcharts在IE中不能一次性正常显示的一种解决办法
- 独立式环境与宿主式环境————《标准C语言指南》读书笔记01
- 解决webpack打包后-webkit-box-orient: vertical ;消失问题
- 【STM32】 keil软件介绍--工程目标选项配置(上)
- 分区安装linux,怎样安装Linux?
- 计算机辅助园林设计常用软件,计算机辅助园林设计应用探讨.doc
- php登陆页添加记住密码选项,PHP 实现登录记住密码
- phpstrom+xdebug调试远程服务器代码
- mysql的配置文件解释
- Python基于Django在线音乐播放网站设计
- [IT新应用]无线投影技术
- 计算机控制系统的典型结构形式框图,计算机控制技术课后习题
- php十六进制转为ascii,16进制转换成ascii_16进制转ascii码转换工具_16进制转ascii
- Window环境下MQTT安装
- sap采购申请自动转采购订单
- win10系统如何格式化
- 基于 SSM 的 CRM 客户管理系统
- strstr函数用法小结
- 我参加 NVIDIA Sky Hackathon---语音识别+前端设计
热门文章
- c++/visual studio常见问题【1】
- cnki登录显示服务器或网络异常,知网查重官网为什么无法登录?
- 微信分享功能android,关于Android实现简单的微信朋友圈分享功能
- 3.2.1 体渲染之Ray Casting
- Windows API 常量定义
- vscode之全局搜索与局部搜索
- python生成图片base64编码及阿里云验证码识别
- 旧文重发 | 爬虫工程师必须知道的几个法律案例
- 最推荐雇主No.1,美版“支付宝”实力碾压FANNG
- Java+CountDownLatch多任务处理优化