当前位置: 代码迷 >> Oracle管理 >> ORACKLE中的两个表的数据导入和导出解决方案
  详细解决方案

ORACKLE中的两个表的数据导入和导出解决方案

热度:97   发布时间:2016-04-24 05:55:06.0
ORACKLE中的两个表的数据导入和导出
表A和表B结构完全一样。A表数据要更新到B表去。两表通过字段ID来关联。
  如果字段IMPORTDIRECTION=1,A.ID等于B.ID,则把A表中对应ID的那条数据update到B表去,然后把A表中的字段IMPORTDIRECTION修改成4.
  如果字段IMPORTDIRECTION=1,A.ID不等于B.ID,说明是新数据。则把A表中对应ID的那条数据insert into到B表去,然后把A表中的字段IMPORTDIRECTION修改成4.请问下语句该如何写

------解决方案--------------------
一条语句恐怕不行
SQL code
MERGE INTO BUSING(  SELECT ID,COL_1,COL_2...  FROM A  WHERE A.IMPORTDIRECTION=1)AON (B.ID=A.ID)WHEN MATCHED THEN UPDATE SET   B.COL_1=A.COL_1,  B.COL_2=A.COL_2,  ...WHEN NOT MATCHED THEN INSERT (ID,COL_1,COL_2...)VALUE(A.ID,A.COL_2,...);UPDATE A SET IMPORTDIRECTION=4;
  相关解决方案