MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Cách hoạt động của GREATEST () trong MariaDB

Trong MariaDB, GREATEST() là một hàm tích hợp trả về đối số lớn nhất (tức là lớn nhất / giá trị tối đa) từ danh sách các đối số của nó.

Để trả lại mức tối thiểu đối số -valued, sử dụng LEAST() .

Cú pháp

Cú pháp như sau:

GREATEST(value1,value2,...)

Trong đó value1,value2,… là hai hoặc nhiều đối số trả về giá trị lớn nhất.

Ví dụ

Đây là một ví dụ:

SELECT GREATEST(3, 8);

Kết quả:

+----------------+
| GREATEST(3, 8) |
+----------------+
|              8 |
+----------------+

Dưới đây là một ví dụ khác sử dụng nhiều đối số hơn:

SELECT GREATEST(3, 8, 9, 12, 80, 7, 4);

Kết quả:

+---------------------------------+
| GREATEST(3, 8, 9, 12, 80, 7, 4) |
+---------------------------------+
|                              80 |
+---------------------------------+

Biểu thức

Các đối số có thể bao gồm các biểu thức như sau:

SELECT GREATEST(2 * 3, 1 * 3);

Kết quả:

+------------------------+
| GREATEST(2 * 3, 1 * 3) |
+------------------------+
|                      6 |
+------------------------+

Chuỗi

Các đối số không cần phải là số. Ví dụ:dưới đây là so sánh các chuỗi:

SELECT GREATEST('a', 'b', 'z');

Kết quả:

+-------------------------+
| GREATEST('a', 'b', 'z') |
+-------------------------+
| z                       |
+-------------------------+

Ngày

Dưới đây là so sánh các chuỗi ngày:

SELECT GREATEST('2020-01-01', '2021-01-01');

Kết quả:

+--------------------------------------+
| GREATEST('2020-01-01', '2021-01-01') |
+--------------------------------------+
| 2021-01-01                           |
+--------------------------------------+

Loại hỗn hợp

Tài liệu MariaDB tuyên bố rằng nếu bất kỳ đối số nào là chuỗi phân biệt chữ hoa chữ thường, thì các đối số sẽ được so sánh dưới dạng chuỗi phân biệt chữ hoa chữ thường. Tuy nhiên, bạn có thể thấy rằng các kiểu trộn có thể tạo ra kết quả không mong muốn và một cảnh báo.

Ví dụ:

SELECT GREATEST('Cat', 10);

Kết quả:

+---------------------+
| GREATEST('Cat', 10) |
+---------------------+
|                  10 |
+---------------------+
1 row in set, 1 warning (0.000 sec)

Kiểm tra cảnh báo:

SHOW WARNINGS;

Kết quả:

+---------+------+-----------------------------------------+
| Level   | Code | Message                                 |
+---------+------+-----------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Cat' |
+---------+------+-----------------------------------------+

Đối số rỗng

GREATEST() trả về null nếu bất kỳ đối số nào là null :

SELECT GREATEST(1, null, 3);

Kết quả:

+----------------------+
| GREATEST(1, null, 3) |
+----------------------+
|                 NULL |
+----------------------+

Thiếu đối số

Đang gọi GREATEST() với số lượng đối số sai hoặc không có bất kỳ đối số nào dẫn đến lỗi:

SELECT GREATEST();

Kết quả:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'GREATEST'

Và:

SELECT GREATEST(10);

Kết quả:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'GREATEST'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách triển khai MariaDB Cluster 10.5 để có tính khả dụng cao

  2. Cách MariaDB đạt được quy mô toàn cầu với Xpand

  3. Cách cài đặt MariaDB trên CentOS 8

  4. 2 cách liệt kê tất cả các hàm trong MariaDB

  5. Làm thế nào Performant là ProxySQL Node của bạn?