SİPARİŞE GÖRE MySQL: ÖRNEK ile DESC & ASC Sorgusu

Sonuçları Sıralama

SELECT komutunu kullanarak sonuçlar, kayıtların veritabanına eklendiği sırayla döndürüldü. Bu, varsayılan sıralama düzenidir. Bu bölümde sorgu sonuçlarımızı nasıl sıralayabileceğimize bakacağız. Sıralama, sorgu sonuçlarımızı belirli bir şekilde yeniden düzenlemektir. Sıralama tek bir sütunda yapılabileceği gibi birden fazla sütunda da yapılabilir. Sayı, dizeler ve tarih veri türlerinde yapılabilir.

ORDER BY nedir? MySQL?

MySQL TARAFINDAN SİPARİŞ Verileri düzenli bir şekilde sıralamak için SELECT sorgusu ile birlikte kullanılır. MySQL ORDER BY deyimi, sorgu sonuç kümelerini artan veya azalan düzende sıralamak için kullanılır.

SELECT statement... [WHERE condition | GROUP BY `field_name(s)` HAVING condition] ORDER BY `field_name(s)` [ASC | DESC];

İŞTE

  • "SELECT ifadesi... " normal seçme sorgusudur
  • "| " alternatifleri temsil eder
  • “[NEREDE koşulu | GROUP BY `alan_adı(lar)` HAVING koşulu” sorgu sonuç kümelerini filtrelemek için kullanılan isteğe bağlı koşuldur.
  • "TARAFINDAN SİPARİŞ" sorgu sonuç kümesi sıralamasını gerçekleştirir
  • “[ASC | DESC]” sonuç kümelerini artan veya azalan düzende sıralamak için kullanılan anahtar kelimedir. Not ASC varsayılan olarak kullanılır.
  • DESC ve ASC Anahtar Kelimeleri Nelerdir?

    DESC ve ASC Anahtar KelimeleriASC artanın kısa şeklidir DESC ve ASC Anahtar KelimeleriMySQL DESC, azalan kelimesinin kısa şeklidir
    Sorgu sonuçlarını yukarıdan aşağıya doğru sıralamak için kullanılır. Sorgu sonuçlarını aşağıdan yukarıya doğru sıralamak için kullanılır
    Tarih veri türleri üzerinde çalışırken listenin en üstünde en eski tarih gösterilir. . Tarih türleri üzerinde çalışırken listenin en üstünde en son tarih gösterilir.
    Sayısal veri türleriyle çalışırken en düşük değerler listenin başında gösterilir. Sayısal veri türleriyle çalışırken en yüksek değerler sorgu sonuç kümesinin en üstünde gösterilir.
    Dize veri türleriyle çalışırken, sorgu sonuç kümesi A harfinden başlayarak Z harfine kadar sıralanır. Dize veri türleriyle çalışırken, sorgu sonuç kümesi Z harfiyle başlayanlardan A harfine kadar sıralanır.

    SQL DESC ve ASC anahtar kelimelerinin her ikisi de SELECT deyimiyle birlikte kullanılır ve MySQL ORDER BY cümlesi.


    DESC ve ASC sözdizimi

    SQL DESC sort anahtar sözcüğünün temel söz dizimi aşağıdaki gibidir.

    SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC /DESC [LIMIT N]

    İŞTE

    • SELECT {fieldName(s) | *} FROM tableName(ler) sonuç kümesinin alınacağı alanları ve tabloları içeren ifadedir.
    • [NEREDE koşulu] isteğe bağlıdır ancak verileri verilen koşula göre filtrelemek için kullanılabilir.
    • TARAFINDAN SİPARİŞ alan ad(lar)ı zorunludur ve sıralamanın gerçekleştirileceği alandır. MySQL DESC anahtar sözcüğü sıralamanın azalan sırada olacağını belirtir.
    • [SINIR] isteğe bağlıdır ancak sorgu sonuç kümesinden döndürülen sonuçların sayısını sınırlamak için kullanılabilir.

    Örnekler:

    Şimdi pratik bir örneğe bakalım –

    SELECT * FROM members;

    Yukarıdaki betiğin çalıştırılması MySQL workbench'ü myflixdb ile karşılaştırdığımızda aşağıdaki sonuçlar ortaya çıkıyor.

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553


Pazarlama departmanının üyelerin bilgilerinin Doğum Tarihine göre azalan sırada düzenlenmesini istediğini varsayalım. Bu, onların doğum günü tebriklerini zamanında göndermelerine yardımcı olacaktır. Aşağıdaki gibi bir sorguyu çalıştırarak söz konusu listeyi elde edebiliriz –

SELECT * FROM members ORDER BY date_of_birth DESC;

Yukarıdaki betiğin çalıştırılması MySQL workbench'ü myflixdb ile karşılaştırdığımızda aşağıdaki sonuçlar ortaya çıkıyor.

DESC ve ASC örneği

Artan sırada aynı sorgu

SELECT * FROM üyeler ORDER BY date_of_birth ASC

DESC ve ASC örneği

Not: NULL değerler, değer olmadığı anlamına gelir (sıfır veya boş dize değil). Bunların nasıl sıralandığına dikkat edin.

Daha fazla örnek

Tüm üye kayıtlarını listeleyen aşağıdaki SQL sıralama betiğini ele alalım.

SELECT * FROM `members`;

Yukarıdaki betiğin çalıştırılması aşağıda gösterilen sonuçları verecektir.

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL


Cinsiyet alanını kullanarak sorgu sonuç kümesini sıralayan bir liste elde etmek istediğimizi varsayalım, aşağıda gösterilen betiği kullanırız.

SELECT * FROM `members` ORDER BY `gender`;
membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL

"Kadın" üyeler önce "Erkek" üyeler tarafından görüntülendi, bunun nedeni ORDER BY DESC ifadesinin ASC veya MySQL DESC anahtar sözcüğü, varsayılan olarak, MySQL sorgu sonuç kümesini artan düzende sıraladı.

Şimdi bunu yapan bir örneğe bakalım iki sütun kullanarak sıralama; birincisi kriteri in artan sıra ikinci sütun ise varsayılan olarak kriteri in azalan sipariş.

SELECT * FROM `members` ORDER BY `gender`,`date_of_birth` DESC;

Yukarıdaki betiğin çalıştırılması MySQL workbench'ü myflixdb'ye karşı çalıştırmak aşağıdaki sonuçları veriyor.

DESC ve ASC örneği

Cinsiyet sütunu varsayılan olarak artan sırada sıralanırken doğum tarihi sütunu açıkça azalan sırada sıralandı

DESC ve ASC'yi neden kullanabiliriz?

Bir video kütüphanesi üyesinin ön bürodan gelen soruları yanıtlamasına yardımcı olması için ödeme geçmişini yazdırmak istediğimizi varsayalım; ödemelerin son ödemeden başlayarak önceki ödemeye doğru azalan kronolojik sırada yazdırılması daha mantıklı olmaz mıydı?

SQL'de DESC bu gibi durumlarda kullanışlı olan bir anahtar kelimedir. Ödeme tarihini kullanarak listeyi azalan şekilde sıralayan bir sorgu yazabiliriz.

Pazarlama departmanının, üyelerin film kiralarken kütüphanede hangi filmlerin mevcut olduğuna karar vermek için kullanabileceği kategoriye göre bir film listesi almak istediğini varsayalım; film kategorisi adlarını ve başlığını artan şekilde sıralamak daha mantıklı olmaz mıydı? Üyeler listedeki bilgileri hızlı bir şekilde arayabilir mi?

ASC anahtar sözcüğü bu tür durumlarda kullanışlıdır; film listesini kategori adına ve film başlığına göre artan sırada sıralayabiliriz.

ÖZET

  • Sorgu sonuçlarını sıralama, bir sorgu sonuç kümesinden döndürülen satırların artan veya azalan sırada yeniden düzenlenmesidir.
  • SQL'de DESC anahtar sözcüğü, sorgu sonuç kümesini azalan düzende sıralamak için kullanılır.
  • ASC anahtar sözcüğü, sorgu sonuç kümesini artan sırada sıralamak için kullanılır.
  • Hem DESC hem de ASC, ORDER BY anahtar sözcüğüyle birlikte çalışır. Ayrıca aşağıdaki gibi diğer anahtar kelimelerle birlikte de kullanılabilirler. WHERE yan tümcesi ve SINIR
  • Hiçbir şey açıkça belirtilmediğinde ORDER BY için varsayılan ASC'dir.

Bu yazıyı şu şekilde özetleyin: