sql中如何把字符串转换为数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql中如何把字符串转换为数字相关的知识,希望对你有一定的参考价值。
num1是主键,类型是int,num2是外键,类型是text, num2中可以是多个值也可以使一个值,如num2中一列有4个值(1,2,3,4),num1中分别有4列值为1,2,3,4,要num1和num2比较,num1=num2,如何把num2转换为单独的1,2,3,4
我要查询,select * from table1,table2 where num1=num2 那num1=num2这块怎么写啊,num1是4个值,num2是一个值,查出来的结果也是4个值的
当输入表达式得数为一个有效的整数、浮点数、money 或 decimal 类型,那么 ISNUMERIC 返回 1;
否则返回 0。返回值为 1 确保可以将 expression 转换为上述数字类型中的一种。 参考技术A 不太看得懂你的描述,我就知道如果是数据库是orecle的话用to_number(字符串)把字符串转换为数字。 参考技术B select * from table1,table2 where charindex(','+ltrim(num1)+',',','+cast(num2 as varchar(8000))+',')>0本回答被提问者和网友采纳 参考技术C 哎 你把数字转成字符串不就行了 ,转字符串应该简单吧
在SQL语句里面如何将字符型转换成数字型?
参考技术A将字符的数字转成数字,比如'0'转成0可以直接用加法来实现;
例如:将pony表中的d 进行排序,可d的定义为varchar,可以这样解决;
select * from pony order by (d+0);
在进行ifnull处理时,比如 ifnull(a/b,'0') 这样就会导致 a/b成了字符串,因此需要把'0'改成0,即可解决此困扰;
比较数字和varchar时,比如a=11,b="11ddddd";
则 select 11="11ddddd"相等;
若绝对比较可以这样:
select binary 11 =binary "11ddddd";
字符集转换 : CONVERT(xxx USING gb2312);
类型转换和SQL Server一样,就是类型参数有点点不同 : CAST(xxx AS 类型),CONVERT(xxx,类型);
类型必须用下列的类型:BINARY、CHAR()、DATE、TIME、DATETIME、DECIMAL、SIGNED、UNSIGNED。
以上是关于sql中如何把字符串转换为数字的主要内容,如果未能解决你的问题,请参考以下文章