Herkese merhaba,

Bu yazıda sizlere SQL Server’da dinamik order by nasıl kullanılır ondan bahsedeceğim.

SQL Server’da dinamik bir şekilde sıralama yapma ihtiyacınız olabilir. Bunun ile ilgili basit bir örnek göstermek istiyorum.

İşlemler Northwind veritabanı üzerinden yapıldı. Northwind veritabanını indirmek için aşağıdaki linki kullanabilirsiniz.

  SQL Server’da Northwind Veritabanı Dosyası
DECLARE @siralamatipibelirle INT = 3
SELECT
	ProductID
   ,ProductName
   ,UnitPrice
FROM products
ORDER BY CASE
	WHEN @siralamatipibelirle = 1 THEN ProductID
END DESC, CASE
	WHEN @siralamatipibelirle = 2 THEN ProductName
END DESC, CASE
	WHEN @siralamatipibelirle = 3 THEN UnitPrice
END ASC

Burada declare sıralamatipibelirle diyerek bir değişken oluşturuyoruz. Bu değişkene bir değer atadık ki buradaki kodları bir fonksiyon ya da bir prosedür içinde de kullanabilirsiniz. Sonrasında case when yardımı ile seçimli bir sıralama işlemi yapıyoruz. Ben 3 tipini seçtiğim için benim sıralamam UnitPrice değerine göre asc biçiminde olacaktır. Siz hangi tipi seçerseniz ona göre olur.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

554 Kez Okundu

Kategoriler: