Prosedürle (stored procedure) olsun olmasın ms sql ile veri çekerken, listelerken sıkça ihtiyaç duyacağınız gruplama "GROUP BY", sıralama da "ORDER BY" ifadeleri ile kullanılır.
GROUP BY
Çektiğiniz, listelediğiniz verileri belli bir kolon altında gruplamanızı sağlar. Genellikle bir veri dizisinde birden fazla bulunan içerikleri teke indirgemek için kullanılır.
SELECT
title,
question,
FROM
posts
GROUP BY
title,
question
Burada görüldüğü üzere "SELECT" kullanarak çektiğimiz tüm verilerin hepsini "GROUP BY" kullandığımızda onun altına da yazmalıyız. Yukarıdaki örnekte "posts" tablosundaki verilerin "title" ve "question" kolonları istenmektedir. "GROUP BY" ile de aynı "title" ve "question" kolonuna sahip olan satırlar teke indirgenir.
ORDER BY
Çektiğimiz, listelediğimiz verilerin belirli bir sıra dahilinde gösterilmesini sağlar. Bu ifade bir sayı veya karaktere göre sıralama yapılmasını sağlar.
SELECT
ID,
title,
question,
FROM
posts
ORDER BY
ID DESC
"SELECT" kullanarak çektiğimiz verileri "ID" kolonuna göre sıralıyoruz. Burada kullanabileceğimiz özellikler:
- DESC : solundaki terim sayı olduğunda en yüksekten en aza doğru sıralar. solundaki terim karakter olduğunda alfabetik olarak en sondan en başa doğru sıralar.
- ASC : solundaki terim sayı olduğunda en azdan en yüksek sayıya doğru sıralar. solundaki terim karakter olduğunda alfabetik olarak en baştan en sona doğru sıralar.