当前位置: 代码迷 >> Sql Server >> 查询最大值,该如何处理
  详细解决方案

查询最大值,该如何处理

热度:37   发布时间:2016-04-24 09:43:22.0
查询最大值
一个字段的varchar,里面的数据是从1-9999,当超过9999,就变成A000 依次类推A002。。。怎么查询出最大值。。
------解决思路----------------------
select   MAX ( cast (replace ('A001' ,'A','') as int )) 
 自己改一下
------解决思路----------------------
SELECT MAX(RIGHT('0000'+[字段],4))FROM 表名

------解决思路----------------------
引用:
一个字段的varchar,里面的数据是从1-9999,当超过9999,就变成A000 依次类推A002。。。怎么查询出最大值。。


超过 9999 了,到了 A100  了,此时查询最大值,LZ 预期是 9999 呢,还是 A100 呢?

前者
按楼上几位的写法就可以了;
后者
select max(col) from mytable 


------解决思路----------------------
字符串比较,一位一位的比较,字母比数字大,
所以,直接用MAX就好了。
select max(col) from mytable 
  相关解决方案