Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MAX() vs GREATEST() di MySQL:Apa Bedanya?

Sekilas, MySQL MAX() dan GREATEST() fungsi melakukan operasi serupa. Keduanya mengembalikan nilai maksimum dari rentang nilai. Namun, ada perbedaan antara kedua fungsi ini.

Cara terbaik untuk melihat perbedaan antara kedua fungsi ini adalah dengan membandingkan sintaksnya.

Sintaks

Sintaks untuk setiap fungsi berjalan seperti ini:

MAX([DISTINCT] expr) [over_clause]
GREATEST(value1,value2,...)

Jadi sudah, mereka terlihat sangat berbeda. MAX() fungsi menerima DISTINCT kata kunci serta OVER klausa (dan GREATEST() fungsi tidak).

Namun, perbedaan utama antara kedua fungsi ini adalah pada argumen yang diterima. Khususnya:

  • MAX() menerima satu argumen
  • GREATEST() menerima banyak argumen

Jadi MAX() biasanya digunakan untuk mengembalikan nilai maksimum dalam kolom dalam database. Tabel dapat berisi banyak baris, tetapi fungsi ini mengembalikan satu baris dengan nilai maksimum.

GREATEST() di sisi lain, mengembalikan argumen bernilai maksimum dari daftar argumen yang diteruskan ke sana. Jadi Anda bisa memberikan katakanlah, 3 argumen ke fungsi ini dan itu akan mengembalikan satu dengan nilai terbesar.

Contoh 1 – Fungsi MAX()

Berikut adalah contoh untuk mendemonstrasikan MAX() fungsi.

SELECT MAX(Population) AS 'Result'
FROM City;

Hasil:

+----------+
| Result   |
+----------+
| 10500000 |
+----------+

Contoh ini menemukan kota dengan populasi terbesar dari City meja. Kolom yang berisi jumlah penduduk tiap kota disebut Population .

Poin kunci tentang contoh ini adalah bahwa hanya satu argumen yang diberikan ke fungsi, tetapi beberapa baris ditanyakan.

Jika Anda mencoba meneruskan beberapa argumen ke MAX() fungsi Anda akan mendapatkan kesalahan.

Contoh 2 – Fungsi GREATEST()

Berikut adalah contoh untuk mendemonstrasikan GREATEST() fungsi.

SELECT GREATEST(1, 5, 9) AS 'Result';

Hasil:

+--------+
| Result |
+--------+
|      9 |
+--------+

Jadi dalam hal ini, kami memberikan tiga argumen. Setiap argumen dibandingkan satu sama lain. Ini berbeda dengan argumen tunggal yang diberikan ke MAX() fungsi.

Jika Anda mencoba meneruskan satu argumen ke GREATEST() fungsi Anda akan mendapatkan kesalahan.


  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 cara mengubah tindakan referensial kunci asing? (perilaku)

  2. Python:gunakan mysqldb untuk mengimpor tabel MySQL sebagai kamus?

  3. Apa perbedaan antara INSERT dan UPDATE di MySQL?

  4. Cara Mengimpor Database Menggunakan phpMyAdmin

  5. Ekspor data MySQL ke Excel dalam PHP