table : realtimefield & record:shopid goodsid goodsname cost priceBJ001 3 手机 1 3
BJ001 3 手机(A) 2 3
BJ001 3 手机(B) 1 3
BJ002 4 外套 1 2
BJ002 4 外套(C) 1 5
BJ003 5 键盘(D) 1 5
BJ003 5 键盘 1 5
BJ003 6 鼠标 1 7
BJ004 6 鼠标 1 5现只想选出以下内容:
shopid goodsid goodsname cost price
BJ001 3 手机 1 3
BJ002 4 外套 1 2
BJ003 5 键盘 1 5
BJ003 6 鼠标 1 7
BJ004 6 鼠标 1 5
凡是在goodsname里面有代括号的,都不要
也就是说
同样的goodsid有重复的goodsname
这样的查询语句应该如何写?ps.我的分不是太多,能写出来就都给了.
BJ001 3 手机(A) 2 3
BJ001 3 手机(B) 1 3
BJ002 4 外套 1 2
BJ002 4 外套(C) 1 5
BJ003 5 键盘(D) 1 5
BJ003 5 键盘 1 5
BJ003 6 鼠标 1 7
BJ004 6 鼠标 1 5现只想选出以下内容:
shopid goodsid goodsname cost price
BJ001 3 手机 1 3
BJ002 4 外套 1 2
BJ003 5 键盘 1 5
BJ003 6 鼠标 1 7
BJ004 6 鼠标 1 5
凡是在goodsname里面有代括号的,都不要
也就是说
同样的goodsid有重复的goodsname
这样的查询语句应该如何写?ps.我的分不是太多,能写出来就都给了.
delete realtime where charindex('(', goodsname)>0
from ta
where charindex('(',goodsname ) = 0
-- Author: happyflystone
-- Date:2008-12-03 17:39:16
-------------------------------------- Test Data: TA
IF OBJECT_ID('TA') IS NOT NULL
DROP TABLE TA
Go
CREATE TABLE TA(shopid NVARCHAR(5),goodsid INT,goodsname NVARCHAR(5),cost INT,price INT)
Go
INSERT INTO TA
SELECT 'BJ001',3,'手机',1,3 UNION ALL
SELECT 'BJ001',3,'手机(A)',2,3 UNION ALL
SELECT 'BJ001',3,'手机(B)',1,3 UNION ALL
SELECT 'BJ002',4,'外套',1,2 UNION ALL
SELECT 'BJ002',4,'外套(C)',1,5 UNION ALL
SELECT 'BJ003',5,'键盘(D)',1,5 UNION ALL
SELECT 'BJ003',5,'键盘',1,5 UNION ALL
SELECT 'BJ003',6,'鼠标',1,7 UNION ALL
SELECT 'BJ004',6,'鼠标',1,5
GO
--Start
select *
from ta
where charindex('(',goodsname ) = 0--Result:
/*(9 行受影响)
shopid goodsid goodsname cost price
------ ----------- --------- ----------- -----------
BJ001 3 手机 1 3
BJ002 4 外套 1 2
BJ003 5 键盘 1 5
BJ003 6 鼠标 1 7
BJ004 6 鼠标 1 5(5 行受影响)*/
--End
55 鳗鱼(冰)(精品)
56 鳗鱼 是有这样的情况的,因为有的东西,冰冻和不冰冻是同一个东西,但是我们的目的是去除 变价 精品 等等的字样
最终取到cost 和price 就是进价和定价
谢谢上面几位了.再麻烦想想
SELECT 'BJ001',3,'手机',1,3 UNION ALL
SELECT 'BJ001',3,'手机(A)',2,3 UNION ALL
这种插入数据的方式不懂。。求解
应该是一一对应的,就是没有任何变价和精品的cost 和price
求解中