1. 程式人生 > >Oracle merge用法(實現多表更新插入)

Oracle merge用法(實現多表更新插入)

merge into sk_kskc a(目標表) using (select yk_ypcd.ypxh as ypxh,yk_ypcd.ypcd as ypcd,bfbz,zxbz ,lsjg
  from yk_typk ,yk_ypcd where yk_typk.ypxh=yk_ypcd.ypxh) b (資料來源)
on (a.wpxh=b.ypxh and a.wpcd=b.ypcd  
 and a.ksdm=414 and a.wplx=0) (目標與來源的條件關聯)
when matched then update set a.wpdj = b.lsjg/b.zxbz * b.bfbz (匹配成功進行更新操作)

when not matched then insert (a.wpxh,a.wpcd,a.wpdj) values (b.ypxh,b.ypcd, b.lsjg/b.zxbz * b.bfbz)(匹配不成功進行插入操作);

相關推薦

Oracle merge用法(實現更新插入)

merge into sk_kskc a(目標表) using (select yk_ypcd.ypxh as ypxh,yk_ypcd.ypcd as ypcd,bfbz,zxbz ,lsjg   from yk_typk ,yk_ypcd where yk_typk.yp

MYSQL: MERGE引擎實現的聯合

MERGE儲存引擎把一組MyISAM資料表當做一個邏輯單元來對待,讓我們可以同時對他們進行查詢。構成一個MERGE資料表結構的各成員MyISAM資料表必須具有完全一樣的結構。每一個成員資料表的資料列必須按照同樣的順序定義同樣的名字和型別,索引也必須按照同樣的順序和同樣的方式定義。 假設你有幾

Oracle資料庫 迴圈建表語句及迴圈插入語句

Oracle資料庫的迴圈建表語句及多表迴圈插入語句 --建多張表的儲存過程 create  or replace procedure  createtables is i number (10) :=

oracle中無主鍵更新方法

首先看下sql server中的一段關於多表更新的update語句 UPDATE table1 SET BankAccount=t_Maintenance_Account.BankAccount FROM table1 INNER JOIN table2 ON (ta

Linq新增插入更新操作

新增: 1、聯合主鍵:主鍵全部相同,插入失敗,至少要有一個不同。(主鍵唯一約束條件) 2、新增物件要另外命名建立 3、新增空

mysql處理更新數據(1000萬級別)

多表 upd sql 更新數據 更新 數據 mysql bsp where 1、 表A(id,code,name,sex)表B(id,Aid,code,name,sex)B表中字段Aid為A表中的id.用一條語句將A表中code更新到B表中code中。 UPDATE A

MySQL Merge引擎實現

mysql 分表 merge存儲引擎 Merge引擎是一組MyISAM表的組合,組合的分表結構必須完全相同,Merge表本身沒有數據,對Merge表的操作實際上都是對子表的操作,只是對APP來說是透明的,在插入的時候默認是插入到最後一張表上,也可以指定插入到第一張表上,Merger表實際上只是多個

java dbcp連接池,大數據處理循環操作插入事例

als postgresq postgres map() err manage fas space false 基礎連接池類: package com.yl.sys.dao; import java.io.InputStream;import java.sql.Connec

Oracle子查詢和查詢

左外連接 查詢 sele 多表查詢 字段 ora 需要 avg lar 多表查詢需要用到表的連接 連接可以分為:(自行百度)   交叉連接(數字邏輯的笛卡爾積,不做解釋)     等值連接       例如:select * from t_a, t_b where t_a.

Oracle結合Mybatis實現TOP 10

語句 sta str rownum info logs where param mys 之前一直使用mysql和informix數據庫,查表中前10條數據十分簡單: 最原始版本: select top * from student 當然,我們還可以寫的復雜一點,比如

Oracle ODI 12c之聯合查詢以及定時任務設置

Oracle ODI 本文介紹如何通過ODI進行多表聯合查詢並設置定時任務。準備工作如下: 準備物理方案和邏輯方案; 創建模型並通過“逆向工程”同步方案; 創建項目(根據實際情況創建或者使用現有的); 確保源表和目標表都有主鍵存在。以上內容的前三點可以參考我博客中的相關文章。 一、Preparing

SpringBoot12 QueryDSL02之利用QueryDSL實現關聯查詢

之間 entity hide cto tar nds 執行 arc -- 1 業務需求   有的系統業務邏輯比較復雜,存在著多表關聯查詢的的情況,查詢的內容不僅僅是單張表的的內容而是多張表的字段組合而成的,直接使用SplringDataJPA實現是比較復雜的,但是如果使用Q

MySQL使用連接實現檢索

不同 查詢 結果 null 定義 連接 產生 SQ 建議 1.內連接:   INNER JOIN ,CRROSS JOIN,JOIN在MySQL中是等價的連接,會產生笛卡爾積。 連接運算符","(逗號)與之類似,但逗號運算符的優先級與其他連接類型的有所不同。有時,在其他連接

Sql語法高級應用之四:使用視圖實現聯合數據明細

sele inner receiver rod erp upn pen logistic received 之前章節我們講到:如果某個表的數據是多個表的聯合,並且存在列與列的合並組成新列,用視圖是最好的方案。 下面我分享兩個個真實的SQL語句案例 USE Wot_In

python操作數據庫類。實現插入數據、查詢數據功能

port style err mys nbsp str con clas exce 1 import mysql.connector 2 class database: 3 def __init__(self,ip,port,user,psw,dbname)

Spring Data JPA 二:實現關聯分頁查詢

最近在對JPA的使用過程中發現對於單表的操作很是方便,但是當設計到多表聯查的時候就需要有一些特殊的操作了。 專案中有一個場景是後臺需要做一個分頁的列表查詢,所需要的資料分散在兩張表中,如果是用mybatis的話直接定義resultMap,然後手寫SQL就可以了。而在JPA中就需要用到JPQL

Spring Data JPA 一:實現關聯查詢

多表查詢在spring data jpa中有兩種實現方式,第一種是利用hibernate的級聯查詢來實現,第二種是建立一個結果集的介面來接收連表查詢後的結果,這裡介紹第二種方式。 一、一對一對映 實體 UserInfo :使用者。 實體 Address:家庭住址。 這裡通過外來鍵的方

mybatis實現一對一,一對關聯查詢

轉自:https://blog.csdn.net/m0_37787069/article/details/79247321 1、一對一 關鍵字:association 作用:針對pojo物件屬性的對映       property:pojo的屬性名   &

TStream實現提交

TStream實現多表提交 function TynFiredac.SaveDatas(const ATableName, ATableName2: string; ADeltas: TStream; AStorageFormat: string = 'binary'): string; var

Oracle 資料庫入門之----------------------查詢

多表查詢   SQL> --工資總額 SQL> select sum(sal) from emp;     SUM(SAL)    &