En son web geliştirme öğreticiler
 

SQL Bildirimi GROUP BY


Toplu işlevler genellikle BY ifadesi ilave GROUP gerekir.


Bildirimi GROUP BY

BY ifadesi GRUP grubuna toplama işlevleri sonuç belirleyen bir veya daha fazla sütun ile bağlantılı olarak kullanılır.

SQL GRUBU TARAFINDAN sözdizimi

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

Demo Veritabanı

Bu dersimizde tanınmış Northwind örnek veritabanını kullanır.

Aşağıda bir seçme "Orders" tablosundaki:

Sipariş Kimliği Müşteri Kimliği Çalışan kimliği Sipariş tarihi ShipperID
10248 90 5 1996-07-04 3
10249 81 6 1996-07-05 1
10250 34 4 1996-07-08 2

Ve bir seçim "Shippers" tablosunun:

ShipperID ShipperName Telefon
1 Speedy Express (503) 555-9831
2 United Package (503) 555-3199
3 Federal Shipping (503) 555-9931

Ve bir seçim "Employees" tablosundaki:

Çalışan kimliği Soyadı İsim Doğum günü Fotoğraf notlar
1 Davolio Nancy 1968-12-08 EmpID1.pic Education includes a BA....
2 Fuller Andrew 1952-02-19 EmpID2.pic Andrew received his BTS....
3 Leverling Janet 1963-08-30 EmpID3.pic Janet has a BS degree....

SQL GRUBU TARAFINDAN Örneği

Şimdi her gönderen tarafından gönderilen siparişlerin sayısını bulmak istiyoruz.

Aşağıdaki SQL deyimi nakliyatçılar göre gruplandırılmış emirleri gibi sayar:

Örnek

SELECT Shippers.ShipperName,COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers
ON Orders.ShipperID=Shippers.ShipperID
GROUP BY ShipperName;

Kendin dene "

Birden Fazla Sütun GROUP BY

Biz de böyle, birden fazla sütunu BY ifadesi GROUP kullanabilirsiniz:

Örnek

SELECT Shippers.ShipperName, Employees.LastName,
COUNT(Orders.OrderID) AS NumberOfOrders
FROM ((Orders
INNER JOIN Shippers
ON Orders.ShipperID=Shippers.ShipperID)
INNER JOIN Employees
ON Orders.EmployeeID=Employees.EmployeeID)
GROUP BY ShipperName,LastName;

Kendin dene "