sql排序,id本身为字符串,怎样转换为数字后排序

如表内1.2.3.4.5.。。。。。24,想搜出最大的值,结果出来是9.。。用selectcast((max(ont_id))asint)fromoa_sys.dbo.t... 如表内1.2.3.4.5.。。。。。24,想搜出最大的值,结果出来是9.。。用
select cast((max(ont_id)) as int) from oa_sys.dbo.tb_test也不行,该怎样转换呢?谢谢
展开
 我来答
客厅沙发三件套
推荐于2017-11-25 · TA获得超过130个赞
知道小有建树答主
回答量:156
采纳率:0%
帮助的人:78万
展开全部

很简单,因为你的id字段是字符型当然是以9开头最大,教你个方法,先将字符型转整形就可以了

select max(ont_id+0) from oa_sys.dbo.tb_tes
追问
我的表内是varchar的字段,想用命令转换下,如果将表设计成整形是可以的,关键是前期插入数据时担心有字符型数据误插入,为了抑制错误才设计成varchar,想通过命令来实现转换,可是转换不成。
廿一056
2013-07-17 · TA获得超过147个赞
知道小有建树答主
回答量:352
采纳率:100%
帮助的人:135万
展开全部
max放在外面
或者用TOP和ORDER BY 联合
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式