sql 字段取数问题. 请问下高手问,例如我有个字段值是 3.99*1.22*2.3(打个比方,就是 X1 * X2 * X3 的,要取X3) 我想取2.3这个数,请问下可以用sql语句怎么取? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 substring(col,len(col)-3,len(col))仅针对 2.3的情况! 本帖最后由 roy_88 于 2010-01-13 11:25:43 编辑 select right('3.99*1.22*2.3', charindex('*',REVERSE('3.99*1.22*2.3'))-1) select parsename(replace('3.99*1.22*2.3','*','.'),1) decalre @s varchar(20)set @s='3.99*1.22*2.3'select right(@s, charindex('*',REVERSE(@s))-1) declare @s varchar(20)set @s='3.99*1.22*2.3'select right(@s, charindex('*',REVERSE(@s))-1) select left(reverse(Col),charindex('*',reverse(Col))-1) --错了select reverse(left(reverse(Col),charindex('*',reverse(Col))-1)) declare @s varchar(20)set @s='3.99*1.22*2.3'select REVERSE(LEFT(REVERSE(@s), charindex('*',REVERSE(@s))-1)) -------------------- 2.3(所影响的行数为 1 行) 这个是对个别情况而已...我做想做得就是能取到 X1 * X2 * x3 这个3个数。。 declare @s varchar(20)set @s='3.99*1.22*2.3'declare @SQL varchar(100)SELECT @SQL='SELECT COL='+REPLACE(@S,'*',' UNION ALL SELECT ')EXEC(@SQL)COL ----- 3.991.222.30 fedora 14 自带的mysql的头文件在哪? 数据库的复制问题,和数据导入导出(请教高手,在线等...) 如何取每组最新的数据 连接池问题 100分,求一个sql语句,各位高手帮帮忙!(还是以前的问题,寻求最佳答案) 大家帮我看看,算不算史上最强的SQL语句? 问一个很简单的问题! 查看快照代理时出现的问题 简单的问题---我原来用到acess,现在扩充了sqlserver,,能把他们整合到一块用sqlserver吗 数据库高手低手进来帮帮我,谢谢~~ 在sql中有没有判断是否被整除的方法 怎么用存储过程得到e:\aaa\下面所有后缀名为.log的文件名称?
set @s='3.99*1.22*2.3'
select right(@s, charindex('*',REVERSE(@s))-1)
set @s='3.99*1.22*2.3'
select right(@s, charindex('*',REVERSE(@s))-1)
select reverse(left(reverse(Col),charindex('*',reverse(Col))-1))
set @s='3.99*1.22*2.3'
select REVERSE(LEFT(REVERSE(@s), charindex('*',REVERSE(@s))-1))
--------------------
2.3(所影响的行数为 1 行)
我做想做得就是能取到 X1 * X2 * x3 这个3个数。。
set @s='3.99*1.22*2.3'
declare @SQL varchar(100)
SELECT @SQL='SELECT COL='+REPLACE(@S,'*',' UNION ALL SELECT ')
EXEC(@SQL)
COL
-----
3.99
1.22
2.30