MySQL- tutoriaal

MySQL TUIS MySQL-inleiding MySQL RDBMS

MySQL SQL

MySQL SQL MySQL KIES MySQL WAAR MySQL EN, OF, NIE MySQL BESTEL DEUR MySQL VOEG IN MySQL NULL-waardes MySQL-OPDATERING MySQL SKEE MySQL-LIMIET MySQL MIN en MAX MySQL COUNT, AVG, SUM MySQL LIKE MySQL Wildcards MySQL IN MySQL TUSSEN MySQL aliasse MySQL sluit aan MySQL BINNE SLUIT AAN MySQL LOS LINKS AAN MySQL REGS SLUIT AAN MySQL KRUIS SLUIT AAN MySQL Self Sluit aan MySQL UNIE MySQL GROEP DEUR MySQL HET MySQL BESTAAN MySQL ENIGE, ALMAL MySQL INSERT SELECT MySQL-GEVAL MySQL nul-funksies MySQL-kommentaar MySQL-operateurs

MySQL- databasis

MySQL Skep DB MySQL Drop DB MySQL Skep tabel MySQL Drop Table MySQL Verander Tabel MySQL-beperkings MySQL nie nul nie MySQL Uniek MySQL-primêre sleutel MySQL buitelandse sleutel MySQL-tjek MySQL verstek MySQL Skep indeks MySQL Outo-verhoging MySQL-datums MySQL-aansigte

MySQL- verwysings

MySQL-datatipes MySQL-funksies

MySQL voorbeelde

MySQL voorbeelde MySQL Vasvra MySQL-oefeninge

MySQL HAV- klousule


Die MySQL HAVING-klousule

Die HAVINGklousule is by SQL gevoeg omdat die WHEREsleutelwoord nie met totale funksies gebruik kan word nie.

HET Sintaksis

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);

Demo-databasis

Hieronder is 'n keuse uit die "Klante"-tabel in die Noordewind-voorbeelddatabasis:

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

MySQL MET Voorbeelde

Die volgende SQL-stelling lys die aantal kliënte in elke land. Sluit slegs lande in met meer as 5 kliënte:

Voorbeeld

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
HAVING COUNT(CustomerID) > 5;

Die volgende SQL-stelling lys die aantal kliënte in elke land, hoog na laag gesorteer (sluit slegs lande in met meer as 5 kliënte):

Voorbeeld

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
HAVING COUNT(CustomerID) > 5
ORDER BY COUNT(CustomerID) DESC;


Demo-databasis

Hieronder is 'n keuse uit die "Bestellings"-tabel in die Noordewind-voorbeelddatabasis:

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

En 'n keuse uit die "Werknemers"-tabel:

EmployeeID LastName FirstName BirthDate Photo Notes
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....

Meer OM Voorbeelde te hê

Die volgende SQL-stelling lys die werknemers wat meer as 10 bestellings geregistreer het:

Voorbeeld

SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders
FROM (Orders
INNER JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID)
GROUP BY LastName
HAVING COUNT(Orders.OrderID) > 10;

Die volgende SQL-stelling lys as die werknemers "Davolio" of "Fuller" meer as 25 bestellings geregistreer het:

Voorbeeld

SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders
FROM Orders
INNER JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
WHERE LastName = 'Davolio' OR LastName = 'Fuller'
GROUP BY LastName
HAVING COUNT(Orders.OrderID) > 25;