求一个处理语句
T1
名称 规格
A 1.1g
b 2ml:2XX
c 0.9q*dd
结果
名称 规格
A 1.1
b 2
c 0.9
取规格最左边的第一组数值。谢谢
[解决办法]
这个我有个笨方法,你试试下面的语句吧...
select replace(replace(replace(convert(varchar,getdate(),20),'-',''),' ',''),':','')
--把getdate()换了即可
[解决办法]
select a 名称,left(b,PATINDEX('%[a-zA-Z]%',b)-1)规格 from tb
[解决办法]
SELECT [名称],LEFT([规格],PATINDEX('%[^0-9.]%',[规格])-1) AS [规格] FROM T1
[解决办法]
if OBJECT_ID('T1','U') is not null
drop table T1
go
create table T1
(
名称 nvarchar(20),
规格 nvarchar(20)
)
go
insert into T1 values
('A','1.1g'),
('b','2ml:2XX'),
('c','0.9q*dd')
--SQL
select 名称, left(规格,patindex('%[^0-9.]%',规格)-1) 规格 From T1
--结果集
/*
名称规格
A1.1
b2
c0.9
*/