İlginizi Çekebilir
  1. Ana Sayfa
  2. SQL Server
  3. T-SQL VIEW’larda ORDER BY Kullanımı

T-SQL VIEW’larda ORDER BY Kullanımı

T-SQL ile uğraşan herkes mutlaka view’larla da uğraşmıştır. View’lar tablolardaki verilere erişmek için kullandığımız bir diğer yoldur. İçlerinde genellikle select deyimiyle oluşturulmuş bir sorgu bulunur.

Gerçekte view’larda order by terimi kullanılmaz. Peki bir view oluşturdunuz ve bu view içinde ORDER
BY ifadesi kullanmak istiyorsunuz. Nasıl olacak bu iş?

View’larda ORDER BY kullanmanın tek yolu TOP 100 PERCENT ifadesini kullanmaktır.

TOP 100 PERCENT komutu view’daki kayıtların 100% ünü sıralı bir şekilde getirecektir.

Bir örnekle açıklayalım.

AdventureWorksDW2012 dbmizdeki vAssocSeqLineItems view’ına order by yazıp alter etmek istediğimde aşağıdaki hatayı alıyorum.


Resim-1

Aynı view’u Top 100 percent ekleyerek alter edelim.


Resim-2

View’umuz başarılı bir şekilde güncellendi ve verimiz OrderNumber değişkenine göre sıralı bir şekilde listelendi.


Resim-3

Ek olarak Order By eklendikten sonra View’daki sorgu performansının düştüğünü de unutmayalım.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

Yorum Yap

Yazar Hakkında

Şeyda Ocak, lisans eğitimini Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünde, yüksek lisans eğitimini ise Sakarya Üniversitesi Bilgisayar ve Bilişim Mühendisliği bölümünde tamamlamıştır. Veri tabanı yazılımı ve raporlama dünyasına üniversitenin ilk yıllarında aldığı SQL Server veri tabanı eğitimleri ile başlayan Şeyda, sektörün önde gelen firmalarında İş Zekası alanında Microsoft teknolojileri üzerine çalışmış, şu anda Türkiye Finans Katılım Bankası’nda Veri Ambarı ve Yasal Raporlamalar Yönetici Yardımcısı olarak görev almaktadır.

Yorum Yap

Yorumlar (1)

  1. 3 sene önce

    ‘create view vw_ürünfiyat as (select top 99 percent p.ProductName,p.UnitPrice from Products p order by p.UnitPrice desc)’

    Konuyla alakalı örnek bir sorgu yukarıdadır. ‘top 100’ yazarsak doğru bir şekilde gelmiyor.Yazarın örneğine dikkatle bakarsanız ascanding bir sıralamanın gerçekten olmadığını göreceksiniz.