sqlserver和mysql的行转列通用存储过程
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  
相关文档:
以下这篇文章论述上在什么情况下子查询比一般的内连接查询更加快速
http://www.mysqlperformanceblog.com/2010/03/18/when-the-subselect-runs-faster/
以下是我对mysql的order by和limit优化的建议,要适表的数据量和用来过滤列的唯一值的个数而定
(1)where子句中用来过滤结果的列所在索引的cadinality很小,即用相关 ......
组成LVS最重要的部分有三个:请求分发服务器、处理服务器、共享存储。
典型的Web集群并不需要共享存储,只有请求分发服务器和处理服务器,如下图所示:
如果完成请求需要基于数据,那么共享存储就是LVS必须的组件了。LVS邮件服务器集群如下所示:
目前能应用于LVS的MySQL集群只能是NDB Cluster,因为MySQL众多的存储引擎 ......
mssql,oracle中
test表:
1 5 abc
2 6 bcd
1 7 ade
2 8 adc
select a,b,c
from(
select a,b,c
,row_number()over(partition by a order by b desc) rn
from test
) &nb ......
今日sqlserver2000的服务启动不了,看了一下错误日志“SQL Server evaluation period has expired.”
从网上找了找,重新安装sqlserver2000即可,重装时可能会遇到“以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”错误,可查看本人前一篇文章解决 ......
数据同步问题终于解决:
转帖:A服务器: host 192.168.1.101 port 3306 B服务器: host 192.168.1.102 port 3306 1,授权用户: A服务器 mysql>grant replication slave,file on *.* to 'repl9'@'192.168.1.102' identified by '1234569'; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Qu ......