Computer >> Máy Tính >  >> Lập trình >> MySQL

Nhận giá trị lớn nhất từ ​​trường varchar trong MySQL

Sử dụng hàm MAX () cùng với hàm SUBSTRING () cho việc này. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   -> (
   -> Id varchar(200)
   -> );
Query OK, 0 rows affected (0.52 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable values('2019-0515-1980');
Query OK, 1 row affected (0.49 sec)

mysql> insert into DemoTable values('2019-0516-780');
Query OK, 1 row affected (0.19 sec)

mysql> insert into DemoTable values('2019-0517-2780');
Query OK, 1 row affected (0.16 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

Đầu ra

+----------------+
| Id             |
+----------------+
| 2019-0515-1980 |
| 2019-0516-780  |
| 2019-0517-2780 |
+----------------+
3 rows in set (0.00 sec)

Sau đây là truy vấn để nhận giá trị lớn nhất từ ​​trường varchar -

mysql> select max(Id) from DemoTable
   -> where Id LIKE  CONCAT(SUBSTRING(Id, 1, 4),'%');

Đầu ra

+----------------+
| max(Id)        |
+----------------+
| 2019-0517-2780 |
+----------------+
1 row in set (0.00 sec)