0

Pivot tablosunu takip ediyorum ve daha sonra saklı yordamda kullanmak istiyorum. Peki, daha sonra nasıl saklayabilirim veya daha sonra başka bir tabloya pivot tablo oluşturabilirim/seçebilirim, böylece daha sonra depolanmış olan prosedudumda kullanabilirim.SQL sunucusunda Pivot tablosuna nasıl isim verilir?

select [2] as Feb, [3] as March, [4] as April from 
(
    select entry1, month1 
    from tblMonth 
) d 
pivot 
(
    max(entry1) 
    for month1 in ([2],[3], [4]) 
) as ccc 

Şimdi yapamadığım "ccc'den * seç" yapmak istiyorum.

+1

Bir sonraki ifadede yalnızca bir kez daha başvurmanız gerekiyorsa bir cte kullanabilirsiniz. Geçici bir tablo oluşturarak veya seçerek kullanarak bir geçici tabloya ekleyebilirsiniz. –

+0

evet, bir sonraki ifadede tekrar başvurmak istiyorum. Bana örnek veya sözdizimi için referans verebilir misiniz ..? – Sachin

+0

Arama motoruna bakmayı denediniz mi? Gerçekten binlerce ve binlerce ctes örneği vardır. Şüphelendiğim halde, tempolu veriyi bir kereden fazla atıfta bulunmaktan bahsettiğinizden beri tempolu bir tablo istiyorsunuz. FROM'dan önce "#MyTempTableName" dosyasına ekleyin ve sorgunuzun sonuçlarını geçici bir tabloya sahip olacaksınız. –

cevap

0

Bunu test etmedim, ancak iş parçacığı pivot tablonun etrafına bir takma ad koyup diğer adla seçmektir. Böyle bir şey:

SELECT CCC.* FROM 
(select [2] as Feb, [3] as March, [4] as April from 
(select entry1, month1 from tblMonth) d 
pivot (max(entry1) for month1 in ([2],[3], [4])) as c) AS CCC 

pivot tablolar (sadece Google "pivot tablo sql server 2008 örnek") mükemmel örneklerinden bol vardır.

0

Teşekkürler Çocuklar, aradığım yanıtı buldum.

seçme * den tblMonth_temp2 (ccc seçin. * Içine ( seçme ENTRY1 MONTH1 den tblMonth_temp ) d eksen ( maks (entry1) ([2], [3 MONTH1 için dan ], [4]) ) ccc olarak) x