有char型字符31185090 我想转成3*185+1*90=645 就是第一位*3-5位数字,第二位*6-8位数字,
32050025 =3*50+2*25=200 注:32050025=3,2,050,025
32004001 =3*4+2*1=14
32050025 =3*50+2*25=200 注:32050025=3,2,050,025
32004001 =3*4+2*1=14
解决方案 »
- (SQL语法)SQL 作业问题 紧急求救!
- 如何用sql查询两条相同的人的全部信息
- 急!!更新表
- 大家帮忙看看,sql server报错
- SQL Server 2000 数据表里的数据突然丢失
- 用 MS SQL SERVER 的SQL 语言,怎么写 读一个表的某一 段数据,或每隔几条记录读其中的一条 的SQL查询语句??
- 求解:一个非常奇怪的select查询问题
- 触发器的连锁触发要注意哪些问题?
- 麻烦各位了 谢谢
- 在线等待,如何捕获sql2000的事务日志?
- SQL2005服务器上跑的比PC慢?
- 不显示删除回复显示所有回复显示星级回复显示得分回复 多重步驟 OLE DB 操作發生錯誤。80040e21
set @s='32004001'
select
cast(left(@s,1) as int)*
cast(substring(@s,3,3) as int)*
cast(substring(@s,2,1) as int)*
cast(substring(@s,6,3) as int)
/*
-----------
24(1 行受影响)*/
set @s='31185090'
select cast(substring(@s,1,1) as int) * cast(substring(@s,3,3) as int)
+ cast(substring(@s,2,1) as int) * cast(substring(@s,6,3) as int)
set @s='32004001'
select
cast(left(@s,1) as int)*
cast(substring(@s,3,3) as int)+
cast(substring(@s,2,1) as int)*
cast(substring(@s,6,3) as int)
/*
-----------
14(1 行受影响)*/
set @str='32004001'select cast(substring(@str,1,1) as int) * cast(substring(@str,3,3) as int) +
cast(substring(@str,2,1) as int) * cast(substring(@str,7,3) as int) num--结果
num
-----------
645长度固定吗