?? 動(dòng)態(tài)交叉查詢(xún).txt
字號(hào):
有一個(gè)這樣的結(jié)構(gòu):
Id no value
A 1 3
A 2 4
A 3 5
B 1 6
B 2 7
B 3 8
查詢(xún)結(jié)果:
Id value1 value2 value3
A 3 4 5
B 6 7 8
查詢(xún)語(yǔ)句怎么寫(xiě)
====================================================================
還有,給兩個(gè)字段均相同的兩個(gè)表t1,t2,字段假設(shè)為id,value;
寫(xiě)一個(gè)語(yǔ)句找出t1表中id不在t2表中存在的id和value,不允許嵌套
/*測(cè)試數(shù)據(jù)*/
create table #a ( id char(1),no int,value int) /*源表*/
insert into #a select 'A', 1, 3
union all select 'A', 2, 4
union all select 'A', 3, 5
union all select 'B', 1, 6
union all select 'B', 2, 7
union all select 'B', 3 , 8
/*借助臨時(shí)表改字段名*/
create table #b(id char(1),no varchar(10),value int)
insert into #b select id,'value'+cast(no as varchar(1)),value from #a
/*動(dòng)態(tài)查詢(xún)*/
declare @str nvarchar(4000)
select @str=''
select @str=@str+','+quotename(no)+'=sum(case no when '+quotename(no,N'''')+' then value else 0 end)'
from #b group by no
exec('select id'+@str+'from #b group by id ')
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -