按A表的字段1,字段2查询B表,若有记录中有相同的字段1值,字段2值则用A表此记录值更新B表记录,否则插入A表记录到B表,假设两表字段一样。。
解决方案 »
- ORACLE查询语句求助啊
- 一条select sql语句执行多次,得到的结果排序是否相同。
- 关于oracle数据库与图片的上传
- 请教大侠们,怎么恢复部分毁坏的ORACLE数据?
- Oracle后台进程在什么时候将日志缓冲区中的重做信息写入重做日志文件啊?
- oracle不能update
- 表中的记录存在从属关系,sql语句该如何写,精通sql的高手一定要来帮帮忙,我的最后一关!
- (高分求助)Oracle9i如何在Linux redhat 7.2上安装?
- 如何通过已经知道的日期,得到星期?
- oracle pl/sql怎么写SP实现增量抽取
- 请教个数据库查询问题
- 弱弱的问个问题 PLSQL developer 怎么执行我想要的sql语句 英文版的看不明白
merge into B
using A
on(B.字段1=A.字段1 and B.字段2=A.字段2)
when matched then
update set B.xxx=A.xxx,B.xxx=A.xxx,....
when not matched then
insert into values(A.xxx,A.xxx,....);
update b set (c1,c2...,cn) = (select c1,c2...cn from a where 字段1 = b.字段1 and 字段2 = b.字段2) where exists (select 1 from a where 字段1 = b.字段1 and 字段2 = b.字段2)insert into b select * from a where not exists (select 1 from a where 字段1 = b.字段1 and 字段2 = b.字段2)
B表是ORACLE数据库中的表。
JET-SQL支不支持1,2楼的方法
会报错,SQL语句没有正常结束
求救 !!!!
sql server的语法,在oracle中不适用楼主可以考虑用外部表
这个不是外部表吗????