程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> sql多表行轉列、級聯行轉列示例代碼

sql多表行轉列、級聯行轉列示例代碼

編輯:關於SqlServer
現有兩表A,B

A表存儲商品點擊日志,B表存儲商品

要求顯示當天所有商品點擊量列表並附帶總數並按天排序
復制代碼 代碼如下:
declare @sql varchar(2000)
set @sql='select CONVERT(varchar(100), a.[Time], 23) as 時間,count(b.title) as 總數'
select @sql =@sql+ ',sum(case b.title when '''+Title+''' then 1 else 0 end) as '+'['+Title+']'
from (select distinct title from B) as B
set @sql=@sql+' from A as a left join B as b on a.AId=B.Aid
group by CONVERT(varchar(100), a.[Time], 23) order by CONVERT(varchar(100), a.[Time], 23) desc'
exec(@sql)

顯示結果
時間 總數 商品1 商品2 商品3 2013-11-11 5 1 0 4 2013-11-10 13 2 11 1
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved