sql行转列

java面试宝典

老子叫甜甜 提交于 2019-11-30 14:44:45
1、 meta标签的作用是什么 2、 ReenTrantLock可重入锁(和synchronized的区别)总结 3、 Spring中的自动装配有哪些限制? 4、 什么是可变参数? 5、 什么是领域模型(domain model)?贫血模型(anaemic domain model)和充血模型(rich domain model)有什么区别? 6、 说说http,https协议 7、 "= ="和equals方法究竟有什么区别? 8、 &和&&的区别? 9、 .super.getClass()方法调用? 10、 10条SQL优化技巧 11、 10道经典java面试题_实习生必问! 12、 15个Java线程并发面试题和答案 13、 15个高级Java多线程面试题及回答 14、 2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据 15、 2018年java分布式相关最新面试题 16、 2018最新java技术面试题与答案 17、 23种经典设计模式都有哪些,如何分类? 18、 4个Spring常见面试题及答案解析 19、 58到家MySQL数据库开发规范 20、 9条改善Java性能的小建议 21、 9道常见的java笔试选择题 22、 abstract class和interface有什么区别 23、 ActiveMQ是什么 24、

sql面试题整理

倾然丶 夕夏残阳落幕 提交于 2019-11-29 09:54:13
1、 10条SQL优化技巧 2、 58到家MySQL数据库开发规范 3、 java.sql.Date和java.util.Date的联系和区别 4、 Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式? 5、 MyBatis里面的动态Sql是怎么设定的?用什么语法? 6、 MYSQL如何优化?结合你的经验 7、 MySQL存储引擎- MyISAM与InnoDB区别 8、 MySQL数据库索引技巧与索引优化 9、 mysql的sql语句优化方法面试题总结 10、 Mysql的引擎有哪些?支持事物么?DB储存引擎有哪些? 11、 Mysql的数据库表锁、行锁、页级锁 12、 oracle数据库笔试题:sql统计出有两门以上的课的分数在80分以上的学生的姓名和年龄? 13、 postgresql在order by时候联合索引失效 14、 sql Server中float、real、decimal(numeric)数据类型的区别 15、 sqlserver中char(n)、varchar(n)、text有什么区别? 16、 sqlserver中nchar(n)、nvarchar(n)、ntext有什么区别? 17、 sql优化 18、 SQL怎么优化执行效率更高? 19、 SQL笔试:Student学生表,Course 课程表,Sc选课表 20、 SQL笔试题

SQL进阶-行转列&列转行

不羁的心 提交于 2019-11-29 06:13:00
一、行转列 1、建表 CREATE TABLE score( student_id VARCHAR(20) NOT NULL COMMENT '学生编号' DEFAULT '', student_name VARCHAR(50) NOT NULL COMMENT '学生姓名' DEFAULT '', gender VARCHAR(10) NOT NULL COMMENT '学生性别' DEFAULT '', subject_name VARCHAR(50) NOT NULL COMMENT '课程名称' DEFAULT '', score INTEGER NOT NULL COMMENT '分数' DEFAULT 0 )ENGINE=MyISAM DEFAULT CHARSET=gbk COMMENT='学生成绩'; DELETE FROM score; INSERT INTO score VALUES('S001','张三','男','高等数学',82); INSERT INTO score VALUES('S001','张三','男','计算机导论',67); INSERT INTO score VALUES('S001','张三','男','概率论',90); INSERT INTO score VALUES('S001','张三','男','机械原理',82);

Oracle 行转列 动态出转换的列

ぃ、小莉子 提交于 2019-11-27 21:17:09
本文链接: https://blog.csdn.net/Huay_Li/article/details/82924443 10月的第二天,前天写了个Oracle中行转列的pivot的基本使用方法,然后,因为pivot的用法中,正常情况下,我们需要转出多少个列,都得在我们的sql中完完整整地写出,而不能直接在里面写个查询来动态转换。然后,趁着祖国母亲的生日,这几天放假,整理一下处理方法。 一、运行环境 Win10,Oracle Database 11g r2,plsql 12。 二、效果预览 1、固定转换列的方法 2、存储过程处理 1)调用存储过程 2)查指定的视图即可 3、两种方法的关系 其实原理很简单,就是通过动态sql,去把你不愿意写,或者说是不确定的转换列数,通过查询查出来,拼接进去,然后执行拼接后的sql,创建视图。 三、存储过程 create or replace procedure p_RowsToCols(as_sql in varchar2 --源数据的查询sql ,as_sql_cols in varchar2 --动态转换列的查询sql,要求转为列的那列,字段名必须为cols,支持排序 ,as_aggCol in varchar2 --对应pivot函数的 聚合函数 ,as_changeCol in varchar2 --源数据中,要转为列的字段名 ,as

行转列

这一生的挚爱 提交于 2019-11-27 03:52:27
行转列和列转行 行列互转,是一个经常遇到的需求。实现的方法,有case when方式和2005之后的内置pivot和unpivot方法来实现。 在读了技术内幕那一节后,虽说这些解决方案早就用过了,却没有系统性的认识和总结过。为了加深认识,再总结一次。 行列互转,可以分为 静态互转 ,即事先就知道要处理多少行(列) ;动态互转 ,事先不知道处理多少行(列)。 -- 创建测试环境 USE tempdb; GO IF OBJECT_ID ( ' dbo.Orders ' ) IS NOT NULL DROP TABLE dbo.Orders; GO CREATE TABLE dbo.Orders ( orderid int NOT NULL PRIMARY KEY NONCLUSTERED , orderdate datetime NOT NULL , empid int NOT NULL , custid varchar ( 5 ) NOT NULL , qty int NOT NULL ); CREATE UNIQUE CLUSTERED INDEX idx_orderdate_orderid ON dbo.Orders(orderdate, orderid); INSERT INTO dbo.Orders(orderid, orderdate, empid, custid, qty

sql强大的行转列功能(内置函数pivot及注意事项)

爱⌒轻易说出口 提交于 2019-11-26 23:07:14
语法: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现 完整语法: table_source UNPIVOT( value_column FOR pivot_column IN(<column_list>) ) 注意:PIVOT、UNPIVOT是SQL Server 2005 的语法,使用需修改数据库兼容级别 在数据库属性->选项->兼容级别改为 90 if object_id('tb')is not null drop table tb go create table tb(姓名 varchar(10),课程 varchar(10),分数 int) insert into tb values('张三','语文',74) insert into tb values('张三','数学',83) insert into tb values('张三','物理',93)

行转列

梦想的初衷 提交于 2019-11-26 08:14:42
ALTER PROCEDURE [dbo].[proc_Distribute_Report] @ParamBillMonth VARCHAR(150) AS BEGIN PRINT @ParamBillMonth DECLARE @sql VARCHAR(MAX) SELECT @sql = ISNULL(@sql + ',', '') + [TCT] FROM tb_20120720 WHERE billMonth LIKE '' + @ParamBillMonth + '%' GROUP BY [TCT] PRINT @sql EXEC ( ' SELECT Efficiency,PIOT, Reliability,Usability,Functionality,RT,PRT,Stability,FactoryTest,SonyIOTFIOT ,TPOMgmtsupport, TokyoPRT, TPOCommonFunction,PRTBeijingOutsourcing, CVFOTA , CAV, LV ,OMVTPO, FTBeijing, FTSasken , FTHK, LundSasken,OMVEMEABJOrangeTMC, TCTApplicationsTest, FTLAM,FTNAM ,TokyoTCT,FT,RAT,