UPDATE table_name SET columnname1 = value1 [, columname2 = value2]...
FROM table_list WHERE search_condition
FROM table_list WHERE search_condition
解决方案 »
- oracel 查询排序的一点疑问
- 求助,回滚错误号 22
- 用了not in ()语句,查询需要的时间是原来的几十倍,要好几分钟时间。如果再复杂一些的查询就要等半个小时。有没有办法加快not in ()语句的执行速度?
- 插入RAW类型的记录到ORACLE的SQL语句字符串该如何写?
- 新手关于xp下安装oracle的问题。
- ORA-12154 :TNS:无法处理服务名
- 请问substr('专家门诊',1,2) 等于 ?
- 这个想法能实现吗?
- 存储中一语句返回多个值如何定义接收?
- 求oracle 10g RAC 10204_vista_w2k8_x64_production_crs.zip
- 有关数据更新问题(update)
- 游标中的FETCH...INTO...语句是起什么作用的?
set a.fields1=(select 'a'
from b
where a.fields2=b.fields2 and b.fields1='a')
where exists (select 1 from b where a.fields2=b.fields2 and b.fields1='a');
对不起,myheaven2000(),你的回答和我叙述的那种“不行”的方式有区别吗? Sql Server 里,多个表是写成 [FROM {table_name | view_name}[,...]] 这种形式的。Oracle 里这种方式不行。
set a.fields1=b.fields1
from a,b
where a.fields2=b.fields2 and b.fields3='3'在Oracle里如何实现?
set a.fields1=b.fields1
where exists( select * from b where a.fields2=b.fields2 and b.fields3='3')
update a
set a.fields1='a'
where exists(select a.fields1
from b
where a.fields2=b.fields2 and b.fields1='a')
TableA 表的字段: Num Number(5),Name VarChar(20)TableB 表的字段: Num Number(5),Name VarChar(20),IsOld Number(1) Default 0用 SQL 2000 的描述方法是:
Update B
set B.Name = A.Name,B.IsOld = 0
from TableA A,TableB B
where A.Num = B.Num and B.IsOld = 1;
在 ORACLE 中怎实现?