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个值的

可以使用函数:ISNUMERIC
当输入表达式得数为一个有效的整数、浮点数、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中如何把字符串转换为数字的主要内容,如果未能解决你的问题,请参考以下文章

sql server2005中 如何把带逗号的数字字符串转换为数字。除了replace,要函数转换的方法

sql怎么把字符串转换为数字?

在SQL语句里面如何将字符型转换成数字型?

Sql中有没有把字符串转换成int数值类型

mysql如何把16进制转换成中文字符显示

使用SQL如何把用逗号等字符隔开的字符串转换成列表