목차
MySQL AVG示例
具有DISTINCT的MySQL AVG()函数
具有GROUP BY子句的MySQL AVG
具有HAVING子句的MySQL AVG
MySQL AVG()函数与子查询
具有NULL值的MySQL AVG函数
具有控制流函数的MySQL AVG
MySQL AVG 예시
🎜MySQL AVG() 함수와 DISTINCT🎜
🎜GROUP BY 절이 있는 MySQL AVG🎜
🎜HAVING 절이 있는 MySQL AVG🎜
🎜MySQL AVG() 함수 및 하위 쿼리🎜
🎜NULL 값이 있는 MySQL AVG 함수🎜
🎜제어 흐름 함수가 포함된 MySQL AVG🎜
데이터 베이스 MySQL 튜토리얼 MySQL에서 평균값을 찾는 방법

MySQL에서 평균값을 찾는 방법

Dec 02, 2021 am 11:29 AM
mysql 평균값

mysql에서는 AVG() 함수를 사용하여 평균을 구할 수 있습니다. 이 함수는 "SELECT AVG;" 구문을 사용하여 반환된 행 수와 각 데이터 행의 합계를 계산하여 지정된 열 데이터의 평균을 계산할 수 있습니다. (열_이름) FROM" 테이블_이름".

MySQL에서 평균값을 찾는 방법

이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.

mysql에서는 AVG() 함수를 사용하여 평균을 구할 수 있습니다.

MySQL AVG() 함수는 일련의 값 또는 표현식의 평균을 계산하는 데 사용되는 집계 함수입니다.

AVG() 함수는 반환된 행 수와 각 데이터 행의 합계를 계산하여 지정된 열 데이터의 평균을 찾을 수 있습니다.

AVG() 함수의 구문은 다음과 같습니다.

SELECT AVG(column_name) FROM table_name;
로그인 후 복사

DISTINCT 연산자를 AVG() 함수에 추가하여 다양한 값의 평균을 계산할 수도 있습니다. 예를 들어, 1, 1, 2, 3, AVG( ) DISTINCT 연산 사용 이 함수는 다양한 값의 합계, 즉 (1 + 2 + 3)/3 = 2.00 을 반환합니다. 1123,具有DISTINCT操作的AVG()函数将返回不同值的和,即:(1 + 2 + 3)/3 = 2.00

MySQL AVG示例

我们将在示例数据库中使用products表进行演示,下图是products表的结构 -

mysql> desc products;
+--------------------+---------------+------+-----+---------+------------------+
| Field              | Type          | Null | Key | Default | Extra            |
+--------------------+---------------+------+-----+---------+------------------+
| productCode        | varchar(15)   | NO   | PRI |         |                  |
| productName        | varchar(70)   | NO   | MUL | NULL    |                  |
| productLine        | varchar(50)   | NO   | MUL | NULL    |                  |
| productScale       | varchar(10)   | NO   |     | NULL    |                  |
| productVendor      | varchar(50)   | NO   |     | NULL    |                  |
| productDescription | text          | NO   |     | NULL    |                  |
| quantityInStock    | smallint(6)   | NO   |     | NULL    |                  |
| buyPrice           | decimal(10,2) | NO   |     | NULL    |                  |
| MSRP               | decimal(10,2) | NO   |     | NULL    |                  |
| stockValue         | double        | YES  |     | NULL    | STORED GENERATED |
+--------------------+---------------+------+-----+---------+------------------+
10 rows in set
로그인 후 복사

要计算products表中所有产品的平均价格,可以使用AVG函数,如下查询:

SELECT AVG(buyprice) 'Avarage Price' FROM products;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(buyprice) 'Avarage Price' FROM products;
+---------------+
| Avarage Price |
+---------------+
| 54.395182     |
+---------------+
1 row in set
로그인 후 복사

请注意,FORMAT函数用于格式化AVG函数返回的平均值。

您可以向SELECT语句添加一个WHERE子句来计算子集值的平均值。 例如,要计算产品线为Classic Cars的产品的平均价格,您可以使用以下查询:

SELECT AVG(buyprice) 'Avarage Classic Cars Price'
FROM products
WHERE productline = 'Classic Cars';
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(buyprice) 'Avarage Classic Cars Price'
FROM products
WHERE productline = 'Classic Cars';
+----------------------------+
| Avarage Classic Cars Price |
+----------------------------+
| 64.446316                  |
+----------------------------+
1 row in set
로그인 후 복사

具有DISTINCT的MySQL AVG()函数

有些产品价格相同,可以使用以下查询来检查它:

SELECT COUNT(buyprice) - COUNT(DISTINCT buyprice) FROM products;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT COUNT(buyprice) - COUNT(DISTINCT buyprice) FROM products;
+--------------------------------------------+
| COUNT(buyprice) - COUNT(DISTINCT buyprice) |
+--------------------------------------------+
|                                          2 |
+--------------------------------------------+
1 row in set
로그인 후 복사

可以使用AVG()函数通过添加DISTINCT运算符来计算不同价格的平均值,如下所示:

SELECT AVG(DISTINCT buyprice) FROM products;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(DISTINCT buyprice) FROM products;
+------------------------+
| AVG(DISTINCT buyprice) |
+------------------------+
| 54.372870              |
+------------------------+
1 row in set
로그인 후 복사

结果与使用DISTINCT操作符的平均价格略有不同。

具有GROUP BY子句的MySQL AVG

我们经常使用AVG函数与GROUP BY子句一起计算表中每组行的平均值。

例如,要计算每个产品线的产品的平均价格,您将使用带有GROUP BY子句的AVG函数,如下查询语句:

SELECT productline,
       AVG(buyprice) 'Avarage Price'
FROM products
GROUP BY productline;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT productline,
       AVG(buyprice) 'Avarage Price'
FROM products
GROUP BY productline;
+------------------+---------------+
| productline      | Avarage Price |
+------------------+---------------+
| Classic Cars     | 64.446316     |
| Motorcycles      | 50.685385     |
| Planes           | 49.629167     |
| Ships            | 47.007778     |
| Trains           | 43.923333     |
| Trucks and Buses | 56.329091     |
| Vintage Cars     | 46.066250     |
+------------------+---------------+
7 rows in set
로그인 후 복사

具有HAVING子句的MySQL AVG

您可以使用AVG函数中的HAVING子句中为分组的平均值设置条件。 例如,如果要仅选择产品平均价格大于50的产品线,则可以使用以下查询:

SELECT productline, AVG(buyprice) 'Avarage Price' FROM products GROUP BY productline HAVING AVG(buyprice) > 50;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT productline, AVG(buyprice) 'Avarage Price' FROM products GROUP BY productline HAVING AVG(buyprice) > 50;
+------------------+---------------+
| productline      | Avarage Price |
+------------------+---------------+
| Classic Cars     | 64.446316     |
| Motorcycles      | 50.685385     |
| Trucks and Buses | 56.329091     |
+------------------+---------------+
3 rows in set
로그인 후 복사

MySQL AVG()函数与子查询

您可以在SQL语句中多次使用AVG()函数来计算一组平均值的平均值。 例如,可以计算产品线平均购买价格的平均买价如下:

SELECT AVG(pl_avg) 'Average Product'
FROM (
    SELECT AVG(buyprice) pl_avg
    FROM products
    GROUP BY productline
) avgs;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(pl_avg) 'Average Product'
FROM (
    SELECT AVG(buyprice) pl_avg
    FROM products
    GROUP BY productline
) avgs;
+-----------------+
| Average Product |
+-----------------+
| 51.1553314286   |
+-----------------+
1 row in set
로그인 후 복사

怎么运行的 -

  • 子查询根据产品线计算平均购买价格。
  • 外部查询计算从子查询返回的产品线的平均购买价格的平均购买价格。

具有NULL值的MySQL AVG函数

AVG()函数忽略计算中的NULL值,请参阅以下示例:

首先,创建一个名为t的新表,其中有两列idvalval列可以包含NULL值。

CREATE TABLE IF NOT EXISTS t(
    id  int auto_increment primary key,
    val int
);
로그인 후 복사

其次,在t表中插入一些行,包括NULL值。

INSERT INTO t(val)
VALUES(1),(2),(nulL),(3);
로그인 후 복사

第三,使用AVG()函数计算val列中值的平均值:

SELECT AVG(val) FROM t;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(val) FROM t;
+----------+
| AVG(val) |
+----------+
| 2.0000   |
+----------+
1 row in set
로그인 후 복사

该语句按预期返回2,因为在AVG函数的计算中不包括NULL值。

具有控制流函数的MySQL AVG

要计算列的平均值,并在单个语句中有条件地计算相同列的平均值,可以使用具有控制流函数(如IFCASEIFNULLNULLIF等)的AVG函数。

例如,要计算Classic Cars产品线的平均价格与所有产品的平均价格的比例,请使用以下声明:

SELECT AVG(IF(productline='Classic Cars',buyprice,NULL)) / AVG(buyprice) 'Classic Cars/ Products'
FROM products;
로그인 후 복사

执行上面查询语句,得到以下结果 -

mysql> SELECT AVG(IF(productline='Classic Cars',buyprice,NULL)) / AVG(buyprice) 'Classic Cars/ Products'
FROM products;
+------------------------+
| Classic Cars/ Products |
+------------------------+
| 1.1847798580           |
+------------------------+
1 row in set
로그인 후 복사

如果产品线是Classic Cars,则IF(productline='Classic Cars',buyprice,NULL)表达式返回价格,否则返回NULL

MySQL AVG 예시

시연을 위해 샘플 데이터베이스의 products 테이블을 사용하겠습니다. 아래 그림은 products입니다. 코드> 테이블의 구조-🎜rrreee🎜 <code>products 테이블에 있는 모든 제품의 평균 가격을 계산하려면 다음 쿼리와 같이 AVG 함수를 사용할 수 있습니다. 🎜rrreee🎜 위 쿼리문을 실행하면 다음과 같은 결과가 나옵니다-🎜rrreee🎜 FORMAT 함수는 AVG 함수에서 반환되는 평균값의 형식을 지정하는 데 사용됩니다. 🎜🎜SELECT 문에 WHERE 절을 추가하여 값 하위 집합의 평균을 계산할 수 있습니다. 예를 들어 Classic Cars 제품군이 포함된 제품의 평균 가격을 계산하려면 다음 쿼리를 사용할 수 있습니다. 🎜rrreee🎜위 쿼리 문을 실행하면 다음 결과를 얻을 수 있습니다.-🎜rrreee

🎜MySQL AVG() 함수와 DISTINCT🎜

🎜일부 제품의 가격이 동일하므로 다음 쿼리를 사용하여 확인할 수 있습니다. 🎜rrreee🎜위를 실행합니다. 쿼리 문을 사용하면 다음 결과를 얻을 수 있습니다. 🎜rrreee 🎜AVG() 함수를 사용하면 아래와 같이 DISTINCT 연산자를 추가하여 다양한 가격의 평균을 계산할 수 있습니다. 🎜rrreee🎜위 쿼리를 실행합니다. 명령문을 실행하고 다음 결과를 얻습니다. -🎜rrreee🎜결과 및 사용법DISTINCT 연산자의 평균 가격은 약간 다릅니다. 🎜

🎜GROUP BY 절이 있는 MySQL AVG🎜

🎜우리는 GROUP BY 절이 있는 AVG 함수를 자주 사용합니다. 테이블에 있는 각 행 집합의 평균입니다. 🎜🎜예를 들어 각 제품군의 제품 평균 가격을 계산하려면 다음 쿼리와 같이 GROUP BY 절과 함께 AVG 함수를 사용합니다. 🎜rrreee🎜위 쿼리를 실행하고 다음 결과를 얻습니다. - 🎜rrreee

🎜HAVING 절이 있는 MySQL AVG🎜

🎜AVG에서 HAVING 절을 사용할 수 있습니다. 기능 에서 그룹 평균에 대한 조건을 설정합니다. 예를 들어, 평균 제품 가격이 50보다 큰 제품군만 선택하려는 경우 다음 쿼리를 사용할 수 있습니다. 🎜rrreee🎜위 쿼리 문을 실행하면 다음 결과가 나타납니다.🎜rrreee

🎜MySQL AVG() 함수 및 하위 쿼리🎜

🎜SQL 문에서 AVG() 함수를 여러 번 사용하여 평균 집합의 평균을 계산할 수 있습니다. . 예를 들어 해당 제품군의 평균 구매 가격은 다음과 같이 계산할 수 있습니다. 🎜rrreee🎜위 쿼리문을 실행하면 다음과 같은 결과가 나옵니다-🎜rrreee🎜작동 방식-🎜
  • 🎜하위 쿼리🎜제품 라인 구매 가격을 기준으로 평균을 계산합니다.
  • 외부 쿼리는 하위 쿼리에서 반환된 제품군의 평균 구매 가격을 계산합니다.

🎜NULL 값이 있는 MySQL AVG 함수🎜

🎜AVG() 함수는 계산에서 NULL을 무시합니다 code> 값에 대해 다음 예를 참조하세요. 🎜🎜<em>먼저</em>, <code>val과 마찬가지로 <code>id 두 개의 열이 있는 t라는 새 테이블을 만듭니다. , val 열에는 NULL 값이 포함될 수 있습니다. 🎜rrreee🎜두 번째로 NULL 값을 포함하여 t 테이블에 일부 행을 삽입합니다. 🎜rrreee🎜세 번째, AVG() 함수를 사용하여 val 열에 있는 값의 평균값을 계산합니다. 🎜rrreee🎜 위 쿼리 문을 실행하면 다음과 같은 결과가 나옵니다. - 🎜rrreee🎜이 문은 AVG 함수 계산에 NULL 값이 포함되지 않으므로 예상대로 2를 반환합니다. 🎜

🎜제어 흐름 함수가 포함된 MySQL AVG🎜

🎜열의 평균을 계산하고 단일 문에서 동일한 열의 평균을 조건부로 계산하려면 다음을 수행할 수 있습니다. 제어 흐름 함수(예: IF, CASE, IFNULL, NULLIF 등)와 함께 AVG 함수를 사용합니다. 🎜🎜예를 들어 Classic Cars 제품군의 평균 가격과 모든 제품의 평균 가격의 비율을 계산하려면 다음 명령문을 사용하세요. 🎜rrreee🎜위 쿼리 문을 실행하여 다음을 얻습니다. 다음 결과-🎜rrreee🎜제품 라인이 Classic Cars인 경우 IF(productline='Classic Cars',buyprice,NULL) 표현식은 가격을 반환합니다. 그렇지 않으면 NULL을 반환합니다. 🎜

AVG 함수는 계산 시 NULL值,所以AVG(IF(productline ='Classic Cars',buyprice,NULL))表达式只计算产品线是Classic Cars 제품의 평균 가격을 무시하기 때문입니다.

【관련 추천: mysql 비디오 튜토리얼

위 내용은 MySQL에서 평균값을 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

MySQL : 초보자를위한 데이터 관리의 용이성 MySQL : 초보자를위한 데이터 관리의 용이성 Apr 09, 2025 am 12:07 AM

MySQL은 설치가 간단하고 강력하며 데이터를 쉽게 관리하기 쉽기 때문에 초보자에게 적합합니다. 1. 다양한 운영 체제에 적합한 간단한 설치 및 구성. 2. 데이터베이스 및 테이블 작성, 삽입, 쿼리, 업데이트 및 삭제와 같은 기본 작업을 지원합니다. 3. 조인 작업 및 하위 쿼리와 같은 고급 기능을 제공합니다. 4. 인덱싱, 쿼리 최적화 및 테이블 파티셔닝을 통해 성능을 향상시킬 수 있습니다. 5. 데이터 보안 및 일관성을 보장하기위한 지원 백업, 복구 및 보안 조치.

MySQL : 쉽게 학습하기위한 간단한 개념 MySQL : 쉽게 학습하기위한 간단한 개념 Apr 10, 2025 am 09:29 AM

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 1) 데이터베이스 및 테이블 작성 : CreateAbase 및 CreateTable 명령을 사용하십시오. 2) 기본 작업 : 삽입, 업데이트, 삭제 및 선택. 3) 고급 운영 : 가입, 하위 쿼리 및 거래 처리. 4) 디버깅 기술 : 확인, 데이터 유형 및 권한을 확인하십시오. 5) 최적화 제안 : 인덱스 사용, 선택을 피하고 거래를 사용하십시오.

phpmyadmin을 여는 방법 phpmyadmin을 여는 방법 Apr 10, 2025 pm 10:51 PM

다음 단계를 통해 phpmyadmin을 열 수 있습니다. 1. 웹 사이트 제어판에 로그인; 2. phpmyadmin 아이콘을 찾고 클릭하십시오. 3. MySQL 자격 증명을 입력하십시오. 4. "로그인"을 클릭하십시오.

Navicat Premium을 만드는 방법 Navicat Premium을 만드는 방법 Apr 09, 2025 am 07:09 AM

Navicat Premium을 사용하여 데이터베이스 생성 : 데이터베이스 서버에 연결하고 연결 매개 변수를 입력하십시오. 서버를 마우스 오른쪽 버튼으로 클릭하고 데이터베이스 생성을 선택하십시오. 새 데이터베이스의 이름과 지정된 문자 세트 및 Collation의 이름을 입력하십시오. 새 데이터베이스에 연결하고 객체 브라우저에서 테이블을 만듭니다. 테이블을 마우스 오른쪽 버튼으로 클릭하고 데이터 삽입을 선택하여 데이터를 삽입하십시오.

MySQL 및 SQL : 개발자를위한 필수 기술 MySQL 및 SQL : 개발자를위한 필수 기술 Apr 10, 2025 am 09:30 AM

MySQL 및 SQL은 개발자에게 필수적인 기술입니다. 1.MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템이며 SQL은 데이터베이스를 관리하고 작동하는 데 사용되는 표준 언어입니다. 2.MYSQL은 효율적인 데이터 저장 및 검색 기능을 통해 여러 스토리지 엔진을 지원하며 SQL은 간단한 문을 통해 복잡한 데이터 작업을 완료합니다. 3. 사용의 예에는 기본 쿼리 및 조건 별 필터링 및 정렬과 같은 고급 쿼리가 포함됩니다. 4. 일반적인 오류에는 구문 오류 및 성능 문제가 포함되며 SQL 문을 확인하고 설명 명령을 사용하여 최적화 할 수 있습니다. 5. 성능 최적화 기술에는 인덱스 사용, 전체 테이블 스캔 피하기, 조인 작업 최적화 및 코드 가독성 향상이 포함됩니다.

Navicat에서 MySQL에 새로운 연결을 만드는 방법 Navicat에서 MySQL에 새로운 연결을 만드는 방법 Apr 09, 2025 am 07:21 AM

응용 프로그램을 열고 새로운 연결 (Ctrl n)을 선택하여 Navicat에서 새로운 MySQL 연결을 만들 수 있습니다. "MySQL"을 연결 유형으로 선택하십시오. 호스트 이름/IP 주소, 포트, 사용자 이름 및 비밀번호를 입력하십시오. (선택 사항) 고급 옵션을 구성합니다. 연결을 저장하고 연결 이름을 입력하십시오.

Navicat에서 SQL을 실행하는 방법 Navicat에서 SQL을 실행하는 방법 Apr 08, 2025 pm 11:42 PM

Navicat에서 SQL을 수행하는 단계 : 데이터베이스에 연결하십시오. SQL 편집기 창을 만듭니다. SQL 쿼리 또는 스크립트를 작성하십시오. 실행 버튼을 클릭하여 쿼리 또는 스크립트를 실행하십시오. 결과를 봅니다 (쿼리가 실행 된 경우).

Navicat은 데이터베이스 오류 코드 및 솔루션에 연결합니다 Navicat은 데이터베이스 오류 코드 및 솔루션에 연결합니다 Apr 08, 2025 pm 11:06 PM

데이터베이스에 연결할 때의 일반적인 오류 및 솔루션 : 사용자 이름 또는 비밀번호 (오류 1045) 방화벽 차단 연결 (오류 2003) 연결 시간 초과 (오류 10060) 소켓 연결 (오류 1042) SSL 연결 오류 (오류 10055) 너무 많은 연결 시도가 차단되는 경우 (오류 1049) 데이터베이스에 연결되지 않음 (오류 1049) 데이터베이스에 연결되지 않습니다 (오류 1049).

See all articles