oracle中如何将varchar型转换成int型

oracle中如何将varchar型转换成int型convert(int,'1234')这个我试过不行,还有不有其他的办法... oracle中如何将varchar型转换成int型
convert(int,'1234')这个我试过不行,还有不有其他的办法
展开
 我来答
大野瘦子
高粉答主

2019-10-24 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:34.5万
展开全部

这样:select to_number('123') from dual

oracle没有显示的INT型,你直接定义成number就好,强制类型转换函数都差不多,转换为日期型就是TO_DATE(),

转换为数字就是TO_NUM(),转换为字符就是TO_CHAR(),括号中跟需要转换的内容,日期型注意格式掩码

扩展资料:

注意事项

CAST() 和CONVERT() 函数可用来获取一个类型的值,并产生另一个类型的值。
这个类型 可以是以下值其中的 一个:

BINARY[(N)]

CHAR[(N)]

DATE

DATETIME

DECIMAL

SIGNED [INTEGER]

TIME

UNSIGNED [INTEGER]

所以也可以用CAST解决问题:

select server_id from cardserver where game_id = 1 order by CAST(server_id as SIGNED) desc limit 10

也可以使用CONVERT来搞定此问题:

select server_id from cardserver where game_id = 1 order by CONVERT(server_id,SIGNED) desc limit 10

匿名用户
推荐于2017-09-19
展开全部
1、先将varchar转换为数字,再转换为int型:
convert(int,convert(numeric(4,0),'1234'))
2、并不是所有varchar型都能转换成int型,你得确认数据,
使用TRUNC函数去掉小数点;
3、在数据录入的时候,就判断是否是整数,并且强制转换如,int(price),也同样可以避免日后 SQL 比较时,转换出错。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
raylmtxwd
2013-04-03 · 超过30用户采纳过TA的回答
知道答主
回答量:93
采纳率:100%
帮助的人:57.2万
展开全部
oracle没有显示的INT型,你直接定义成number就好,强制类型转换函数都差不多,转换为日期型就是TO_DATE(),
转换为数字就是TO_NUM(),转换为字符就是TO_CHAR(),括号中跟需要转换的内容,日期型注意格式掩码。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
艾谎柠ei
2017-09-19 · TA获得超过292个赞
知道小有建树答主
回答量:437
采纳率:0%
帮助的人:54.1万
展开全部
oracle转成mysql时:varchar2(10)可以转成varchar(10)number则要看oracle中存储的具体是什么类型的数据:1、如果是整型,那么mysql中,用int即可;2、如果是带小数位的,那么mysql中可用numeric类型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mandyocean
2013-04-03 · 超过25用户采纳过TA的回答
知道答主
回答量:137
采纳率:0%
帮助的人:59.9万
展开全部
oracle 里 convert这个函数是做字符集转换的。
oracle里是to_char() to_number()这样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式