MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Fungsi AVG() di MariaDB

Di MariaDB, AVG() fungsi mengembalikan nilai rata-rata dari ekspresi yang diberikan.

DISTINCT opsi dapat digunakan untuk mengembalikan rata-rata dari nilai yang berbeda (yaitu menghapus duplikat sebelum menghitung rata-rata).

NULL nilai diabaikan.

Contoh Data

Misalkan kita memiliki tabel dengan data berikut:

SELECT 
    VendorId,
    ProductName,
    ProductPrice 
FROM Products;

Hasil:

+----------+---------------------------------+--------------+
| VendorId | ProductName                     | ProductPrice |
+----------+---------------------------------+--------------+
|     1001 | Left handed screwdriver         |        25.99 |
|     1001 | Right handed screwdriver        |        25.99 |
|     1001 | Long Weight (blue)              |        14.75 |
|     1001 | Long Weight (green)             |        11.99 |
|     1002 | Sledge Hammer                   |        33.49 |
|     1003 | Chainsaw                        |       245.00 |
|     1003 | Straw Dog Box                   |        55.99 |
|     1004 | Bottomless Coffee Mugs (4 Pack) |         9.99 |
+----------+---------------------------------+--------------+

Contoh

Kita dapat menggunakan kueri berikut untuk mendapatkan rata-rata dari semua harga.

SELECT AVG(ProductPrice)
FROM Products;

Hasil:

52.898750

Dalam hal ini, informasi harga disimpan di ProductPrice kolom, jadi kami meneruskannya sebagai argumen ke AVG() fungsi, yang kemudian menghitung rata-rata dan mengembalikan hasilnya.

Hasil yang Difilter

AVG() fungsi beroperasi pada baris yang dikembalikan oleh kueri. Jadi jika Anda memfilter hasilnya, hasil AVG() akan mencerminkan hal itu.

SELECT AVG(ProductPrice)
FROM Products
WHERE VendorId = 1001;

Hasil:

19.680000

Dalam hal ini, 19,680000 adalah harga rata-rata dari semua produk yang ditawarkan oleh vendor tertentu.

Yang DISTINCT Kata kunci

Anda dapat menggunakan DISTINCT kata kunci dengan AVG() untuk menghitung hanya nilai yang berbeda. Artinya, jika ada nilai duplikat, mereka diperlakukan sebagai satu nilai.

Contoh:

SELECT 
    AVG(ProductPrice) AS "All",
    AVG(DISTINCT ProductPrice) AS "Distinct"
FROM Products;

Hasil:

+-----------+-----------+
| All       | Distinct  |
+-----------+-----------+
| 52.898750 | 56.742857 |
+-----------+-----------+

Dalam hal ini, dua item memiliki harga yang sama (obeng tangan kiri dan obeng tangan kanan sama-sama dihargai 25,99). Oleh karena itu, AVG() fungsi, bila digunakan dengan DISTINCT kata kunci, memperlakukan kedua nilai tersebut sebagai satu, dan menghitung hasilnya sesuai dengan itu.

Fungsi Jendela

AVG() fungsi dapat digunakan dalam fungsi jendela. Lihat SQL AVG() untuk Pemula untuk contoh ini.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana FIELD() Bekerja di MariaDB

  2. Bagaimana SPACE() Bekerja di MariaDB

  3. MariaDB JSON_OBJECTAGG() Dijelaskan

  4. Perbedaan Antara SYSDATE() dan SEKARANG() di MariaDB

  5. Bagaimana SHOW CHARACTER SET Bekerja di MariaDB