SQL行转列代码
1. SQL行转列代码
-
-
表里面有这么一组数据:
code price
'MCU0-3' 15
'MCU0-3' 20
'MCU0-3' 22
'MCU3-15' 17
'MCU3-15' 16
'MCU3-15' -10
'MCU3-15' 50
'MCU3-27' 99
'MCU3-27' 96
'MCU3-27' 54
'MCU3-27' 14
'MCU3-27' 46
'MCU3-27' 86
现在需要得到这样的结果:
MCU0-3 MCU3-15 MCU3-27
15 17 99
20 16 96
22 -10 54
null 50 14
null null 46
null null 86
SQL语句是这样写的:
SELECT ID = IDENTITY(INT, 1, 1), price into #T1 from [table] where code = 'MCU0-3'
SELECT ID = IDENTITY(INT, 1, 1), price into #T2 from [table] where code = 'MCU3-15'
SELECT ID = IDENTITY(INT, 1, 1), price into #T3 from [table]
相关文档:
1. 创建触发器, 在mssql下的触发器的使用:Db->表->选择表名->所有任务(右键)->管理触发器
2. 当表被更新\插入\删除后,都可以通过定义触发器来响应该事件,从而进行相应的处理! 如一个学生转系了,其学号被更换了,他所借的图书对应的学号也相应需要改动,这个我们可以只通过update其学号,和学号相关联的表由触发器 ......
--SQL Server:
Select TOP N * from TABLE Order By NewID()
--Access:
Select TOP N * from TABLE Order By Rnd(ID)
Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(U ......
今天用time Like '2008-06-01%'语句来查询该天的所有数据,被提示语句错误。查了一下才发现该模糊查询只能用于String类型的字段。
自己也查阅了一些资料。关于时间的模糊查询有以下三种方法:
1.Convert转成String,在用Like查询。
select * from table1 where c ......
几个存储过程,很简单的,但是我从来没有学习过,呵呵,这个正是我要来培训的目的
-- =============================================
-- Author:
-- Create date: 2010年05月12日
-- Description: 此过程用于查询所有用户名及密码
-- =============================================
CREATE PROCED ......
实例1:只返回单一记录集的存储过程。
银行存款表(bankMoney)的内容如下
Id
userID
Sex
Money
001
Zhangsan
男
30
002
Wangwu
男
50
003
Zhangsan
男
40
要求1:查询表bankMoney的内容的存储过程
create procedure sp_query_bankMoney
as
select * from bankMoney
go
exec sp_query_bankMoney
注 ......