Fungsi SQL Max() adalah fungsi agregat dalam SQL. Fungsi ini mengembalikan nilai yang lebih besar dalam kondisi. Kondisinya bisa berupa angka, atau bisa berupa ekspresi string.
Sintaks untuk fungsi maks pilih:
SELECT MAX(column_name) FROM table_name WHERE conditions;
Mari mendalami SQL SELECT MAX.
Pertimbangkan tabel yang sudah ada, yang memiliki data berikut:
Nama Tabel:Karyawan
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN | MANAGERID |
1001 | VAIBHAVI | MISHRA | 65500 | PUNE | ORACLE | 1 |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | C# | 5 |
1003 | NIKHIL | VANI | 50500 | JAIPUR | FMW | 2 |
2001 | PRACHI | SHARMA | 55500 | CHANDIGARH | ORACLE | 1 |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW | 2 |
2003 | RUCHIKA | JAIN | 50.000 | MUMBAI | C# | 5 |
3001 | PRANOTI | SHENDE | 55500 | PUNE | JAVA | 3 |
3002 | ANUJA | WANRE | 50500 | JAIPUR | FMW | 2 |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA | 3 |
4001 | RAJESH | BAIK | 60500 | MUMBAI | UJI | 4 |
4002 | ASHWINI | BAGHAT | 54500 | NOIDA | JAVA | 3 |
4003 | RUCHIKA | AGRWAL | 60000 | DELHI | ORACLE | 1 |
5001 | ARKIT | SHARMA | 55500 | DELHI | UJI | 4 |
Contoh 1: Jalankan kueri yang mencari gaji maksimum karyawan dari tabel karyawan.
SELECT MAX (SALARY) AS 'MAXSALARY' FROM EMPLOYEES;
Dalam kueri di atas, kami menemukan gaji maksimum dari seluruh tabel karyawan. Kami telah menamai fungsi Max (gaji) sebagai gaji maksimal. Gaji akan ditampilkan sebagai nama kolom saat output dikembalikan.
Keluaran:
GAJI MAKSIMAL |
65500 |
Seperti yang Anda lihat, gaji maksimum 65.500 dari meja karyawan
Contoh 2: Jalankan kueri untuk mencari gaji maksimum karyawan yang kota tempat tinggalnya adalah Mumbai dari tabel karyawan.
SELECT CITY, MAX(SALARY) AS 'SALARY' FROM EMPLOYEES WHERE CITY = 'MUMBAI';
Kami telah menamai max (gaji) sebagai gaji dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji maksimal seorang karyawan di Mumbai dan menampilkan nama kota.
Keluaran:
KOTA | GAJI |
MUMBAI | 60500 |
Seperti yang Anda lihat, gaji maksimal seorang karyawan yang tinggal di kota Mumbai adalah 60500
Contoh 3: Tulis kueri untuk menemukan gaji maksimum karyawan dari tabel karyawan karyawan yang Departemennya adalah Java.
SELECT DEPARTMENT, MAX(SALARY) AS 'MAXIMUM_SALARY' FROM EMPLOYEES WHERE DEPARTMENT = 'JAVA';
Dalam kueri di atas, kami telah alias max (gaji) sebagai maximum_salary, ditampilkan sebagai nama kolom ketika output dikembalikan. Kami telah menemukan gaji maksimum seorang karyawan yang Departemennya adalah Java dan menampilkan nama departemen.
Keluaran:
DEPARTEMEN | GAJI MAKSIMUM |
JAVA | 58500 |
Seperti yang Anda lihat, gaji maksimum seorang karyawan dari departemen Jawa adalah 58500
Contoh 4: Tulis kueri untuk menemukan gaji maksimum karyawan yang Departemennya termasuk salah satu daftarnya adalah Oracle dan FMW dari tabel karyawan.
SELECT MAX(SALARY) AS 'SALARY' FROM EMPLOYEES WHERE DEPARTMENT IN ('ORACLE', 'FMW');
Kami telah alias maks (gaji) dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji maksimum seorang karyawan yang Departemennya adalah Oracle dan FMW.
Keluaran:
GAJI |
65500 |
Contoh 5: Jalankan kueri untuk mencari gaji maksimum karyawan yang gajinya lebih besar dari 55000 dan kota termasuk Noida, Delhi dari grup tabel karyawan berdasarkan kota.
SELECT CITY, MAX(SALARY) AS EMPLOYEE_SALARY FROM EMPLOYEES WHERE SALARY > 55000 AND CITY IN ('NOIDA', 'DELHI') GROUP BY CITY;
Kami telah menamai Max (gaji) sebagai EMPLOYEE_SALARY dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji maksimum seorang karyawan yang gajinya lebih besar dari 55000. Selain itu, kota karyawan harus menjadi salah satu nama yang termasuk dalam parameter kota IN. Kami juga menggunakan klausa GROUP BY diikuti oleh kolom kota. Kota Noida akan dikelompokkan menjadi satu kota dari semua karyawan yang kotanya di Noida dan menemukan gaji karyawan, dan pendekatan yang sama digunakan untuk kota Delhi.
Keluaran:
KOTA | GAJI_KARYAWAN |
DELHI | 60000 |
NOIDA | 60000 |
Karyawan tinggal di kota Delhi, gaji maksimal adalah 60000, dan Karyawan tinggal di kota Noida, gaji maksimal adalah 60000.
Contoh 6: Jalankan kueri untuk mencari gaji karyawan maksimum dari tabel Karyawan kota adalah unik dari kelompok karyawan menurut Departemen.
SELECT CITY, MAX(DISTINCT SALARY) AS 'EMPLOYEE_SALARY' FROM EMPLOYEES GROUP BY DEPARTMENT;
Kami telah menamai maks (gaji DISTINCT) sebagai Employee_salary dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji karyawan maksimum dari tabel karyawan dengan mempertimbangkan kota-kota unik dalam kolom grup demi departemen.
Keluaran:
DEPARTEMEN | GAJI_KARYAWAN |
NOIDA | 60000 |
JAIPUR | 65500 |
PUNE | 58500 |
PUNE | 65500 |
MUMBAI | 60500 |
Contoh 7: Tulis kueri untuk menemukan gaji karyawan maksimum dari tabel Karyawan unik departemen grup karyawan menurut Departemen.
SELECT DEPARTMENT, MAX(DISTINCT SALARY) AS 'EMPLOYEE_SALARY' FROM EMPLOYEES GROUP BY DEPARTMENT;
Dalam kueri di atas, kami telah alias maks (gaji DISTINCT) sebagai Employee_salary, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji karyawan maksimum dari tabel karyawan dengan mempertimbangkan departemen unik yang dikelompokkan berdasarkan kolom departemen.
Keluaran:
DEPARTEMEN | GAJI_KARYAWAN |
C# | 60000 |
FMW | 65500 |
JAVA | 58500 |
ORACLE | 65500 |
UJI | 60500 |
Contoh 8: Jalankan kueri untuk mencari gaji maksimum Karyawan dari grup tabel Karyawan oleh Departemen di mana gaji maks() lebih besar dari 55000.
SELECT CITY, MAX(SALARY) AS SALARY FROM EMPLOYEES GROUP BY DEPARTMENT HAVING MAX(SALARY) > 55000;
Kami telah menamai max (gaji) sebagai gaji dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Kami telah menemukan gaji karyawan maksimum dari tabel karyawan diikuti kelompok dengan nama departemen dan digunakan memiliki kondisi di mana max() lebih besar dari 55000.
Keluaran:
DEPARTEMEN | GAJI_KARYAWAN |
NOIDA | 60000 |
JAIPUR | 65500 |
PUNE | 58500 |
PUNE | 65500 |
MUMBAI | 60500 |
Seperti yang kita lihat, hanya kota dengan gaji agregat lebih besar dari 55000. Memiliki klausa seperti klausa where. Memiliki klausa digunakan ketika kita ingin menerapkan beberapa kondisi ke fungsi agregat. Kami menggunakan klausa memiliki hanya ketika kami menggunakan fungsi agregat dalam kueri.
Contoh 9: Tulis kueri untuk menemukan gaji maksimum karyawan dengan grup laptop oleh Departemen.
SELECT DEPARTMENT, MAX(SALARY) AS SALARY FROM EMPLOYEES WHERE EMPLOYEEID IN (SELECT EMPLOYEEID FROM LAPTOP) GROUP BY DEPARTMENT;
Kami telah menamai max (gaji) sebagai gaji dalam kueri di atas, ditampilkan sebagai nama kolom saat output dikembalikan. Penjelasan dari query di atas, Sub-query pertama akan dieksekusi (SELECT EMPLOYEEID FROM LAPTOP); sebagai hasilnya, kami akan mendapatkan id karyawan, termasuk nilai nol. Setelah sub-query dieksekusi, query utama akan dieksekusi SELECT DEPARTMENT, MAX(SALARY) AS GARY FROM EMPLOYEES WHERE EMPLOYEEID IN (output dari sub-query). Pada operator IN dari query utama terdapat id pegawai yang merupakan output dari sub-query sesuai dengan operator IN. Kami akan mendapatkan hasil akhir kami yang merupakan grup berdasarkan nama departemen.
Keluaran:
DEPARTEMEN | GAJI |
C# | 60000 |
JAVA | 58500 |
ORACLE | 60000 |
UJI | 55500 |