Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara menampilkan data perkiraan tahun dari baris ke kolom?

coba ini, Anda harus menggunakan sql dinamis

Declare @toyear int=2016
Declare @forcast int=10
Declare @t table (ITEM varchar(50), years int, qty int)
insert into @t
select 'TM-A' ITEM , 2013 years, 100 qty
union all
select 'TM-B' ITEM , 2013 years, 200 qty

;with CTE1 as
(
select * from @t
union all
select b.ITEM,b.years+1,b.qty+((@forcast*b.qty)/100) from @t a 
inner join cte1 b on a.ITEM=b.ITEM 
and b.years<@toyear
)
    select * from
(select  * from cte1 )t4
pivot(min(qty) for years in([2013],[2014],[2015],[2016]))pvt


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana menjumlahkan kolom tertentu dengan bulan dan tahun bijaksana

  2. Permintaan di beberapa database di server yang sama

  3. nvarchar(maks) vs NText

  4. Dapatkan baris sebelumnya dan berikutnya dari baris yang dipilih dengan kondisi (WHERE)

  5. Kelompokkan kolom menjadi beberapa baris dan Group_concate seperti MySQL di SQL Server