34,576
社区成员
发帖
与我相关
我的任务
分享
在sql2000中,表t1
product num
HYO8红圆(1*1*1) 4
缓冲直弯(1*1*1) 32
拉手螺丝(0*0*0) 4
三合一(**) 68
铁角码(16mm) 5
想通过SQL查询,将括号中内容分出来到另外一个字段中,并且去掉(),显示如下:
product guige num
HYO8红圆 1*1*1 4
缓冲直弯 1*1*1 32
拉手螺丝 0*0*0 4
三合一 ** 68
铁角码 16mm 5
这样的SQL查询语句怎么写?
SELECT SUBSTRING(product, 0, CHARINDEX('(', product)) AS product,
REPLACE(REPLACE(SUBSTRING(product, CHARINDEX('(', product), CHARINDEX(')', product)),')',''),'(','') AS guige,
[num]
FROM #T;
--测试数据
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T([product] nvarchar(33),[num] int)
Insert #T
select N'HYO8红圆(1*1*1)',4 union all
select N'缓冲直弯(1*1*1)',32 union all
select N'拉手螺丝(0*0*0)',4 union all
select N'三合一(**)',68 union all
select N'铁角码(16mm)',5
Go
--测试数据结束
SELECT SUBSTRING(product, 0, CHARINDEX('(', product)) AS product,
SUBSTRING(product, CHARINDEX('(', product), CHARINDEX(')', product)) AS guige,
[num]
FROM #T;