Aracılığıyla paylaş


Satırları sıralama (Visual Database Araçları)

Şunlar için geçerlidir: SQL Server

Sorgu sonucundaki satırları sıralayabilirsiniz. Başka bir ifadeyle, değerleri sonuç kümesindeki satırların sırasını belirleyen belirli bir sütunu veya sütun kümesini adlandırabilirsiniz.

Uyarı

Sıralama düzeni kısmen sütunun sıralama dizisine göre belirlenir. Sıralama iletişim kutusunda sıralama dizisini değiştirebilirsiniz.

Sorgu sonuçlarını sıralamanın birkaç yolu vardır:

  • Satırları artan veya azalan düzende düzenleyebilirsiniz

    Varsayılan olarak, SQL satırları artan düzende düzenlemek için sıralama ölçütü sütunlarını kullanır. Örneğin, kitap başlıklarını artan fiyata göre düzenlemek için satırları fiyat sütununa göre sıralamanız yeterlidir. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT *
    FROM titles
    ORDER BY price;
    

    Öte yandan, başlıkları önce daha pahalı kitaplarla düzenlemek istiyorsanız, en yüksek öncelikli sıralamayı açıkça belirtebilirsiniz. Yani, sonuç satırlarının fiyat sütununun azalan değerlerine göre düzenlenmesi gerektiğini belirtirsiniz. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT *
    FROM titles
    ORDER BY price DESC;
    
  • Birden çok sütuna göre sıralayabilirsiniz

    Örneğin, her yazar için bir satır içeren ve önce eyalete, sonra da şehre göre sıralayan bir sonuç kümesi oluşturabilirsiniz. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT *
    FROM authors
    ORDER BY state, city;
    
  • Sonuç kümesinde görünmeyen sütunlara göre sıralayabilirsiniz

    Örneğin, fiyatlar görünmese bile önce en pahalı başlıklarla bir sonuç kümesi oluşturabilirsiniz. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT title_id,
           title
    FROM titles
    ORDER BY price DESC;
    
  • Türetilmiş sütunlara göre sıralayabilirsiniz

    Örneğin, her satırın bir kitap başlığı içerdiği bir sonuç kümesi oluşturabilirsiniz; ilk olarak kopya başına en yüksek telif ücretini ödeyen kitaplar görüntülenir. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT title,
           price * royalty / 100 AS royalty_per_unit
    FROM titles
    ORDER BY royalty_per_unit DESC;
    

    (Her kitabın kopya başına kazandığı telif hakkını hesaplama formülü vurgulanır.)

    Türetilmiş bir sütunu hesaplamak için, önceki örnekte olduğu gibi SQL söz dizimini veya skaler değer döndüren kullanıcı tanımlı bir işlevi kullanabilirsiniz. Kullanıcı tanımlı işlevler hakkında daha fazla bilgi için SQL Server belgelerine bakın.

  • Gruplandırılmış satırları sıralayabilirsiniz

    Mesela; Her satırın bir şehri ve bu şehirdeki yazar sayısını tanımladığı bir sonuç kümesi oluşturabilirsiniz. Bu kümede ilk sırada çok sayıda yazar bulunan şehirler görünür. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT city,
           state,
           COUNT(*)
    FROM authors
    GROUP BY city, state
    ORDER BY COUNT(*) DESC, state;
    

    Sorgu, ikincil sıralama sütunu olarak kullanır state . Bu nedenle, iki durum aynı sayıda yazara sahipse, bu durumlar alfabetik sırada görünür.

  • Uluslararası verileri kullanarak sıralama yapabilirsiniz

    Yani; sütun için varsayılan kurallardan farklı harmanlama kurallarını kullanarak bir sütunu sıralayabilirsiniz. Örneğin, Jaime Patiño'nun tüm kitap başlıklarını alan bir sorgu yazabilirsiniz. Başlıkları alfabetik sırada görüntülemek için başlık sütunu için İspanyolca harmanlama sırası kullanırsınız. Sonuçta elde edilen SQL şöyle görünebilir:

    SELECT title
    FROM authors
         INNER JOIN titleauthor
             ON authors.au_id = titleauthor.au_id
         INNER JOIN titles
             ON titleauthor.title_id = titles.title_id
    WHERE au_fname = 'Jaime'
          AND au_lname = 'Patiño'
    ORDER BY title COLLATE SQL_Spanish_Pref_CP1_CI_AS;