The SQL GROUP BY Statement – SQL GROUP BY хэллэг #
The GROUP BY
statement groups rows that have the same values into summary rows, like “find the number of customers in each country”.
GROUP BY
хэллэг нь ижил утгатай мөрүүдийг нэгтгэн дүгнэх мөрүүд бүлэглэдэг, жишээлбэл “улс бүрт хэдэн харилцагч байгаа вэ” гэж олох.
The GROUP BY
statement is often used with aggregate functions (COUNT()
, MAX()
, MIN()
, SUM()
, AVG()
) to group the result-set by one or more columns.
GROUP BY
өгүүлбэр нь ихэвчлэн нийдүүлэх функцүүдтэй (COUNT()
, MAX()
, MIN()
, SUM()
, AVG()
) хамт хэрэглэгддэг бөгөөд багц үр дүнг нэг эсвэл хэд хэдэн багануудаар бүлэглэдэг.
GROUP BY Syntax – GROUP BY Дүрэм #
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);
SELECT багана_нэр(нүүд)
FROM хүснэгт_нэр
WHERE нөхцөл
GROUP BY багана_нэр(нүүд)
ORDER BY багана_нэр(нүүд);
Demo Database – Жишээ мэдээллийн сан #
Below is a selection from the “Customers” table:
Доорх жишээ нь “Харилцагчид” хүснэгтээс авсан хэсэг юм:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
SQL GROUP BY Examples – SQL GROUP BY жишээнүүд #
The following SQL statement lists the number of customers in each country:
Доорх SQL өгүүлбэр нь улс бүрт хэдэн харилцагч байгааг жагсаана:
Example – Жишээ #
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;
The following SQL statement lists the number of customers in each country, sorted high to low:
Доорх SQL өгүүлбэр нь улс бүрт хэдэн харилцагч байгааг ихээс бага руу эрэмбэлнэ:
Example – Жишээ #
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;
Demo Database – Жишээ мэдээллийн сан #
Below is a selection from the “Orders” table:
Доорх жишээ нь “Захиалгууд” хүснэгтээс авсан хэсэг юм:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10248 | 90 | 5 | 1996-07-04 | 3 |
10249 | 81 | 6 | 1996-07-05 | 1 |
10250 | 34 | 4 | 1996-07-08 | 2 |
And a selection from the “Shippers” table:
Бас “Түгээгчид” хүснэгтийн хэсэг:
ShipperID | ShipperName |
---|---|
1 | Speedy Express |
2 | United Package |
3 | Federal Shipping |
GROUP BY With JOIN Example – JOIN-тай GROUP BY жишээ #
The following SQL statement lists the number of orders sent by each shipper:
Доорх SQL өгүүлбэр нь тус бүр түгээгчийн хүргэсэн захиалгуудыг жагсаана:
Example – Жишээ #
SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;