sqlserver中:
1 /*
2 1 * Description:对数据表进行行列转换
3 2 * Author:llf
4 3 * 调用说明:exec SP_RowChangeCol '学生成绩表','姓名','课程','分数','desc',0,0,'where 年级=''一年级'''
5 4 * 该存储过程调用的相关函数:dbo.Get_StrArrayLength(@groupCol,',');dbo.dbo.Get_StrArrayStrOfIndex(@groupCol,',',1)
6 */
7
8 Alter proc SP_RowChangeCol
9 @tableName varchar(100), --要转换的数据表名(学生成绩表)
10 @groupCol varchar(100), --分组列(学生姓名)
11 @changeCol varchar(100), --要转换的列(考试科目)
12 @countCol varchar(100), --统计列(成绩)
13 @orderby varchar(4), --转换列的排序规则(升序asc,降序desc)
14 @isColSum int, --是否统计列(1是;0否)
15 @isRowSum int, --是否统计行(1是;0否)
16 @strWhere varchar(max) --查询条件('where 年级=''一年级''')
17 as
18 begin
19 declare @sqlhead varchar(8000),@sqlend varchar(8000)
20 ,@sql1 varchar(8000),@sql2 varchar(8000),@sql3 varchar(8000),@sql4 varchar(8000)
21 ,@i int,@ic varchar(20),@sql varchar(1000)
22
23
24  
/******************************************************************************/
/*
主流数据库MYSQL/MSSQL/ORACLE测试数据库脚本代码
脚本任务:建立4个表,添加主键,外键,插入数据,建立视图
运行环境1:microsoft sqlserver 2000 查询分析器
运行环境2:mysql5.0 phpMyAdmin网页界面
运行环境3:oracle 9i SQL*PLU ......