我有一个mysql表,在该表中包含varchar字段。我想从表中获得最大值。
我的表 -
我的SQL QUERY -
SELECT Max(CAST(test as SIGNED)) as a FROM testtable;
通缉输出 -
G450
如何在varchar字段中选择mysql中的最大值?
答案 0 :(得分:2)
如果您的数据始终包含单个字符后跟整数,则可以使用以下内容:
SELECT * FROM testtable WHERE substring(test,2)=(SELECT MAX(CAST(SUBSTRING(test,2) AS SIGNED)) FROM testtable);
这将返回所有带有字符后跟最大整数的行 - 即如果你有G540和X540,它将返回两者。
答案 1 :(得分:0)
SELECT CONCAT('G' , MAX(0+SUBSTRING(test,2))) FROM TABLE_NAME