MySQL 튜토리얼

MySQL 홈 MySQL 소개 MySQL RDBMS

MySQL SQL

MySQL SQL MySQL 선택 MySQL의 위치 MySQL AND, OR, NOT MySQL 주문 MySQL 삽입 MySQL NULL 값 MySQL 업데이트 MySQL 삭제 MySQL 한계 MySQL 최소 및 최대 MySQL 카운트, 평균, 합계 MySQL이 좋아 MySQL 와일드카드 MySQL 입력 MySQL 사이 MySQL 별칭 MySQL 조인 MySQL 내부 조인 MySQL 왼쪽 조인 MySQL 오른쪽 조인 MySQL 크로스 조인 MySQL 자체 조인 MySQL 유니온 MySQL 그룹 BY MySQL HAVING MySQL 존재 MySQL 모든 것 MySQL 삽입 선택 MySQL 케이스 MySQL 널 함수 MySQL 주석 MySQL 연산자

MySQL 데이터베이스

MySQL 생성 DB MySQL 삭제 DB MySQL 테이블 생성 MySQL 삭제 테이블 MySQL 변경 테이블 MySQL 제약 조건 MySQL이 null이 아님 MySQL 고유 MySQL 기본 키 MySQL 외래 키 MySQL 체크 MySQL 기본값 MySQL 인덱스 생성 MySQL 자동 증분 MySQL 날짜 MySQL 보기

MySQL 참조

MySQL 데이터 유형 MySQL 함수

MySQL 예제

MySQL 예제 MySQL 퀴즈 MySQL 연습

MySQL HAVING


MySQL HAVING 절

키워드를 집계 함수와 함께 사용할 수 HAVING없기 때문에 절이 SQL에 추가되었습니다 .WHERE

HAVING 구문

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

데모 데이터베이스

다음은 Northwind 샘플 데이터베이스의 "Customers" 테이블에서 선택한 항목입니다.

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 HAVING 예제

다음 SQL 문은 각 국가의 고객 수를 나열합니다. 고객이 5명 이상인 국가만 포함:

예시

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

다음 SQL 문은 각 국가의 고객 수를 높은 순으로 정렬하여 나열합니다(5명 이상의 고객이 있는 국가만 포함).

예시

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


데모 데이터베이스

다음은 Northwind 샘플 데이터베이스의 "Orders" 테이블에서 선택한 항목입니다.

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

그리고 "Employees" 테이블에서 선택:

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....

더 많은 HAVING 예

다음 SQL 문은 10개 이상의 주문을 등록한 직원을 나열합니다.

예시

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;

다음 SQL 문은 직원 "Davolio" 또는 "Fuller"가 25개 이상의 주문을 등록했는지 여부를 나열합니다.

예시

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;