一个类型为varbinary(MAX)字段数据如何转为十进制数据? 在sql2005里,一个类型为varbinary(MAX)字段数据如何转为十进制数据? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 declare @s varchar(max)set @s='38746243'select convert(int,@s)--如果你的字符太长了,那就要转为float型:set @s='8273468728237848743'select convert(float,@s)/*-----------38746243(1 行受影响)----------------------8.27346872823785E+18(1 行受影响)*/发 SELECT CAST(278 AS VARBINARY(8))SELECT CAST(0x00000116 AS INT)這樣? 看成varchar(max)了!这样行不:declare @b varbinary(MAX)set @b=0x64a80ec2select convert(int,@b)/*-----------1688735426(1 行受影响)*/ --首先要判断该字符窜是否为数字declare @b varbinary(MAX)set @b='123456789'select isnumeric(@b)--返回1则是数据,否则不是,然后再转换--再看数值长度,转换时,需选择数据类型select convert(int,@b)select convert(float,@b)select convert(numeric(20,4),@b) 成绩表对应分数相加 数据库维护计划出问题 请大家帮帮我,关于分组的问题,在线等~~~ 高手请进:这句SQL语句该怎么写啊? SQLServer 变量和常量疑难,请指点 数据库注册的问题! 有关用ldf文件恢复数据库数据的问题~~ 请教:如何用存储过程返回某一表的记录条数? SQL Server7复制问题 falaly请来领分 这个能实现么? 求指教:为什么查询日期后不是按原定义的datetime类型返回
set @s='38746243'
select convert(int,@s)
--如果你的字符太长了,那就要转为float型:
set @s='8273468728237848743'
select convert(float,@s)/*-----------
38746243(1 行受影响)----------------------
8.27346872823785E+18(1 行受影响)*/发
這樣?
这样行不:
declare @b varbinary(MAX)
set @b=0x64a80ec2
select convert(int,@b)
/*
-----------
1688735426(1 行受影响)*/
--首先要判断该字符窜是否为数字
declare @b varbinary(MAX)
set @b='123456789'
select isnumeric(@b)
--返回1则是数据,否则不是,然后再转换
--再看数值长度,转换时,需选择数据类型
select convert(int,@b)
select convert(float,@b)
select convert(numeric(20,4),@b)