Hayırlı akşamlar...

Standart sıralama biçimlerinin dışında, sorgu içinde şartlı bir sıralama yapmak için nasıl bir kod yapısı gerekir?

Netleştirmek için şöyle açayım;

Yerli ve ithal ürünlerin + indirimli ve indirimsiz ürünlerin karışık olarak listelendiği bir tablo düşünelim.

1) Tablonun en başında;
product_by='MADE IN TURKIYE' olan ürünlerin alfabetik olarak sıralanması,
hemen altında da
product_by='world' olan ürünlerin alfabetik olarak sıralanması,


2) Bu iki gruba ait ürünlerin ise kendi içinde;
product_discount='yes' olan ürünlerin önce
ve
product_price DESC ===> fiyatı en düşük olanın en üste olacak şekilde dizilmesi


NASIL SAĞLANABİLİR?




Şu linkteki örnekten yola çıkıp bir takım denemeler yaptım ama henüz netice alamadım.

https://stackoverflow.com/questions/3550942/can-you-add-an-if-statement-in-order-by

Çalışmayan ama beyin fırtınasını başlatabilecek bir deneme kodu;

...
ORDER BY
IF(product_by='MADE IN TURKIYE') DESC,
IF(product_discount='yes') DESC,
...



Biraz girift oldu farkındayım ama juniorlar için...
Üstadlar için değil...


Teşekkürler...