MySQL查询以获取varchar字段中数值的最大值?

要获得最大值,请使用max()函数。让我们首先创建一个表-

mysql> create table findMaxValueInVarcharField
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> Value varchar(200)
   -> );

以下是使用insert命令在表中插入一些记录的查询-

mysql> insert into findMaxValueInVarcharField(Value) values('200');

mysql> insert into findMaxValueInVarcharField(Value) values('1000');

mysql> insert into findMaxValueInVarcharField(Value) values('899474');

mysql> insert into findMaxValueInVarcharField(Value) values('39474');

mysql> insert into findMaxValueInVarcharField(Value) values('4958');

以下是使用select语句显示表中所有记录的查询-

mysql> select * from findMaxValueInVarcharField;

这将产生以下输出-

+----+--------+
| Id | Value  |
+----+--------+
| 1  | 200    |
| 2  | 1000   |
| 3  | 899474 |
| 4  | 39474  |
| 5  | 4958   |
+----+--------+
5 rows in set (0.00 sec)

以下是从varchar字段中的数值中获取最大值的查询-

mysql> select max(cast(Value as unsigned) ) AS MaximumValueFromVarcharField from
findMaxValueInVarcharField;

这将产生以下输出-

+------------------------------+
| MaximumValueFromVarcharField |
+------------------------------+
| 899474                       |
+------------------------------+
1 row in set (0.00 sec)