UPDATE test a
SET (a.v1,a.v2) =
(SELECT SUM(DECODE(id,2,-v1,v1)),
SUM(DECODE(id,2,-v2,v2))
FROM test b
WHERE b.name = a.name)
WHERE a.id = 4
SET (a.v1,a.v2) =
(SELECT SUM(DECODE(id,2,-v1,v1)),
SUM(DECODE(id,2,-v2,v2))
FROM test b
WHERE b.name = a.name)
WHERE a.id = 4
解决方案 »
- Missing SID_LIST_ value left of equation for SID description in LISTENER.ORA
- oracle9i 用什么工具或者方法进行海量数据导入最快?
- sql窗口如何显示储存过程的结果
- 结果集返回问题
- 请问这样的sql怎么写?
- 如何方便地把sql server 中的数据倒入到oracle 中?
- 日期函数的问题
- oracle manager server问题,急急急急急急急急急急急急急急急急急急在线请教各位老大!谢谢
- 请问用sqlplus怎样修改表的字段名?
- 各位高手都来说说聚集函数是怎么实现的?
- 急 ,一个SQL语句写不出,求助,拜托!
- plsql怎么写?
可不可以采用这样的表结构.
create table test(
nam varchar2(3),
v1_1 integer,
v1_2 integer,
v1_3 integer,
v1_4 integer,
v2_1 integer,
v2_2 integer,
v2_3 integer,
v2_4 integer)
然后:
insert into test values('aaa',10,5,2,0,8,2,3,0);
SET (a.v1,a.v2) =
(SELECT SUM(DECODE(id,2,-v1,v1)),
SUM(DECODE(id,2,-v2,v2))
FROM test b
WHERE b.id < 4
and b.name = a.name)
WHERE a.id = 4