group by

GROUP BY, SELECT ile getirilen veriyi gruplar.

SELECT customer_id, SUM (amount) FROM payment GROUP BY
customer_id;

Sorgu payment tablosundaki customer_id değerlerini bulur, aynı customer__id
değerine sahip olanların ‘amount’ değerlerini toplar ve customer_id’ ye göre
gruplar.
Yani spesifik bir customer_id değerine sahip olan satırların amount değerleri
toplamını verir.

SELECT customer_id, SUM (amount) FROM payment GROUP BY
customer_id ORDER BY SUM (amount) DESC;

SELECT first_name || ‘ ‘ || last_name full_name, SUM (amount)
as amount FROM payment INNER JOIN customer USING (customer_id)
GROUP BY full_name ORDER BY amount DESC;

Sorgu her customer kolonu için toplam tutarı ( SUM(amount) ) almak için INNER JOIN
yan tümcesi ile GROUP BY deyimini kullanır. Bu sorgu payment tablosunu customer
tablosuyla birleştirir ve full_name kolonuna göre gruplandırır.

SELECT staff_id , COUNT (payment_id) FROM payment GROUP BY
staff_id;

SELECT customer_id, staff_id, SUM(amount) FROM payment GROUP
BY staff_id, customer_id ORDER BY customer_id;

SELECT DATE(payment_date) paid_date, SUM(amount) sum FROM
payment GROUP BY DATE(payment_date);

Payment_date bir timestamp sütunudur. Ödemeleri(payments) tarihlere göre
gruplandırmak için, önce timestamp’ler tarihlere dönüştürülmeli .Ödemeleri
(payments) sonuç tarihine göre gruplandırmak için DATE() işlevi kullanılır.Sorgu sonucu
paid_date alias’ına sahip sütundaki tarihlerde alınacak ödemelerin toplamı sum
alias’ına sahip sütunda belirtilir.

Kategori seçin...