Merhaba bu yazımda sizlere satırları sutun gibi gösterebilen, inanılmaz pratik Pivot Komutunu anlatacağım. MSSQL veritabanında ” pivot komutu ” kullanmanın mantığını anlamak için öncelikle düz listeleme yapan kodumuzu buraya ekliyorum.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | select * from  (select 1 adet,  'mavi' renk union  select 19 adet , 'yesil' renk union  select 3 adet ,  'beyaz' renk union  select 15 adet , 'mavi' renk union  select 10 adet , 'yesil' renk union  select 4 adet ,  'mavi' renk union  select 7 adet ,  'beyaz' renk union  select 1 adet , 'yesil' renk  ) src | 
Eğer yukarıdaki listelemeyi pivot kullanımı olmadan yapmış olsaydık sonuç olarak alacağız çıktı resimdeki gibi olacaktı. Bu listede şunu yapmak aklımızda geldiğinde ne yapacaktık […]
MSSQL veritabanında temp (geçici) tablolar tempdb ismindeki veritabanında tutulur. Bu yüzden kullandığınız veritabanın information schema tablosunda görülemeyecektir.
| 1 2 | select CATALOG_NAME into ##temp from [tempdb].[INFORMATION_SCHEMA].[SCHEMATA]; SELECT * FROM INFORMATION_SCHEMA.TABLES where table_name like '%##temp%' | 
ilk satır ##temp tablonuzu açar , ikinci satırda ise tablonuzu kendi veritabanınızda aradığınız için bulamazsınız. Çözüm :
| 1 2 3 4 5 6 7 8 9 | SELECT OBJECT_ID('tempdb..##temp') IF OBJECT_ID('tempdb..##temp') Is NOT NULL   begin drop table ##temp end | 
Yukarıdaki gibi object_Id fonksiyonu ile tempdb içinde arama yapmalısınız. Not : tempdb..##temp yazımında TEK NOKTA ile çalışmadığına dikkat ediniz. […]
Son yorumlar