SQL 中怎么把字符串转换为数字

 我来答
橘色双子猴
2018-03-30 · TA获得超过2.5万个赞
知道小有建树答主
回答量:185
采纳率:43%
帮助的人:5万
展开全部

具体方法如下:

  1. 将字符的数字转成数字,比如'0'转成0可以直接用加法来实现;

    例如:将pony表中的d 进行排序,可d的定义为varchar,可以这样解决;

    select * from pony order by (d+0);

  2. 在进行ifnull处理时,比如 ifnull(a/b,'0') 这样就会导致 a/b成了字符串,因此需要把'0'改成0,即可解决此困扰;

  3. 比较数字和varchar时,比如a=11,b="11ddddd";

    则 select 11="11ddddd"相等;

    若绝对比较可以这样:

    select binary 11 =binary "11ddddd";

  4. 字符集转换 :   CONVERT(xxx  USING   gb2312);

    类型转换和SQL Server一样,就是类型参数有点点不同  : CAST(xxx AS 类型),CONVERT(xxx,类型);

    类型必须用下列的类型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。

帐号已注销
2021-06-10 · TA获得超过76.9万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:138万
展开全部

可以使用函数:ISNUMERIC

当输入表达式得数为一个有效的整数、浮点数、money 或 decimal 类型,那么 ISNUMERIC 返回 1;否则返回 0。返回值为 1 确保可以将 expression 转换为上述数字类型中的一种。

将字符的数字转成数字,比如'0'转成0可以直接用加法来实现;

若绝对比较可以这样:

select binary 11 =binary "11ddddd";

字符集转换:CONVERT(xxx  USING   gb2312);

类型转换和SQL Server一样,就是类型参数有点点不同  : CAST(xxx AS 类型),CONVERT(xxx,类型);

类型必须用下列的类型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。

数据类型:

字符串数据类型是建模在形式字符串的想法上的数据类型。字符串是几乎在所有编程语言中可以实现的非常重要和有用的数据类型。在某些语言中它们可作为基本类型获得,在另一些语言中做为复合类型获得。多数高级语言的语法允许通常用某种方式引用起来的字符串来表示字符串数据类型的实例;这种元字符串叫做“文本”或“字符串文本”。

以上内容参考:百度百科-字符串

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
你说了我就做
高粉答主

2020-11-06 · 繁杂信息太多,你要学会辨别
知道答主
回答量:14.1万
采纳率:0%
帮助的人:6271万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lsydezm
2017-01-10
知道答主
回答量:36
采纳率:0%
帮助的人:14.9万
展开全部
1. convert(int,字段名)
2. cast(字段名 as int)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
太马小1D
2017-01-10 · TA获得超过349个赞
知道小有建树答主
回答量:397
采纳率:80%
帮助的人:59.6万
展开全部
select Convert(int,colunmName) from tablename;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式