易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL迷惑

CREATE TABLE [Test_xcmtmp] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[name] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[subject] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Source] [numeric](18, 0) NULL
) ON [PRIMARY]
GO
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'张三',N'语文',60)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'李四',N'数学',70)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'王五',N'英语',80)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'王五',N'数学',75)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'王五',N'语文',57)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'李四',N'语文',80)
INSERT INTO [Test_xcmtmp] ([name],[subject],[Source]) values (N'张三',N'英语',90)
Go

declare @sql varchar(8000)
---*********
set @sql = 'select name,'
select @sql = @sql + 'sum(case subject when '''+subject+''' then source else 0 end) as '''+subject+''','
from (select distinct subject from Test_xcmtmp) as a
select @sql = left(@sql,len(@sql)-1) + ' from Test_xcmtmp group by name'
--**********
exec(@sql)
go



相关问答:

SQL语句效率问题 - 其他数据库开发 / 其他数据库

大家帮忙看看这2个sql语句哪个查询的速度更快点。谢谢帮忙。比较着急。在做性能测试。
select * from
  表A LEFT OUTER JOIN 表B ON (表A.id || ' ' =表B.id) ,表C , 表D, 表E
Where其他条件
select * ......

SQL字段,横向展开

请问各位,如何将SQl中,某字段中的值横向展开呢,
CASE WHEN

具体问题具体分析,看你要怎么展开

姓名  科目      成绩
张三  英语    90
李四  英语&nb ......

在sql中使用output和不使用的区别?

在sql中使用output和不使用的区别?
例如:
ALTER PROCEDURE [dbo].[sp_1]
@SYS_LNNO varchar(20),
@SYS_CALLER varchar(20),
        @SYS_ORGANIZE varchar(10), ......

dbf表导入到sql server2000表问题

请问:
1,如何将一张dbf表导入到sql server2000中的一张表。使用DTS该怎样实现?
2,使用网上代码:
Insert Into Tb_cj Select * from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro D ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号