易截截图软件、单文件、免安装、纯绿色、仅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), ......

请问如何用SQL语句设置字段的IDENETITY属性?

因为平时这种操作比较多,直接在数据库上手动设置危险性较大,所以想用SQL语句实现。
在网上实在搜不到结果,这里高手多,希望能得到答案。
谢谢。
你想怎麼設置?

SQL code:
--创建测试表
......

求一SQL语句

原数据

商品    原价    打折方式1  折扣1    打折方式2  折扣2
笔记本  10000  NULL        0      NULL&nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号