求一条SQL语句来转换数据格式
我得到了一个IP与物理位置的对应表,他的IP地址的格式是:060.194.056.004 ,但是,我用程序得到的IP格式是这样的:60.194.56.4 ,我想求一条sql语句,把每个两位或一位的IP段前面的零去掉.
谢谢赐教。
问题点数:20、回复次数:4Top
1 楼zoubsky(与世隔绝的天空)回复于 2005-11-20 16:05:40 得分 0
declare @tb1 table(IP char(50))
insert @tb1
select '060.194.056.004' union all
select '060.130.003.098'
--select name=replace(replace(name,'.0','.'),'.0','.') from @tb1
--select name = case left(name,1) when 'a' then right(name,len(name)-1) else name end from @tb1
select
replace(replace(case substring(IP,1,1) when '0' then substring(IP,2,len(IP)-1) else IP end,'.0','.'),'.0','.') as IP
from @tb1
/*
测试结果
IP
-----------------------
60.194.56.4
60.130.3.98
*/Top
2 楼zoubsky(与世隔绝的天空)回复于 2005-11-20 16:06:06 得分 20
declare @tb1 table(IP char(50))
insert @tb1
select '060.194.056.004' union all
select '060.130.003.098'
select
replace(replace(case substring(IP,1,1) when '0' then substring(IP,2,len(IP)-1) else IP end,'.0','.'),'.0','.') as IP
from @tb1
/*
测试结果
IP
-----------------------
60.194.56.4
60.130.3.98
*/Top
3 楼love16(一块钱)回复于 2005-11-20 16:33:50 得分 0
楼上正解Top
4 楼terry_yip(我只回答引起我思考的问题)回复于 2005-11-20 17:12:19 得分 0
TO:zoubsky(与世隔绝的天空):
授人与鱼,不如授人与渔,你能不能就每一句加个注释解释一下?
Top




