Heim Datenbank MySQL-Tutorial Oracle 之update

Oracle 之update

Jun 07, 2016 pm 05:33 PM

1、根据条件更新表里的某个字段值,如下:update test t set t.b_salary =case when t.b_id = 5 then 5000 when t.b_id = 6 the

1、根据条件更新表里的某个字段值,如下:
update test t set t.b_salary =
case when t.b_id = 5 then 5000
    when t.b_id = 6 then 6000
    when t.b_id = 7 then 7000
end
where t.b_id in (5,6,7)
说明: where条件部分一定要把记录限制为只需要更新的部分,否则其他部分会被更新为空。


2、2表关联update某个字段的
a)、一对一关联
update test1 t set t.a_salary =
( select a.b_salary from test a where a.b_id = t.a_id
)
where exists (select 1 from test a where a.b_id = t.a_id )
;
commit;


b)、一对多关联
(1)、目标表一个ID存在多条记录,源头是一个ID存一条记录,此种场景和一对一没有区别
update test1 t set t.a_salary =
( select a.b_salary from test a where a.b_id = t.a_id
)
where exists (select 1 from test a where a.b_id = t.a_id )
;
commit;


(2)、目标表一个ID一条记录,源头是一个ID存在多条记录
报错ora-01427 :单行子查询返回多条记录
本质上是目标表在源表根据关联ID去找的时候,一个ID找到了多条记录,返回给目标表的一条记录里目标值为多个。
若返回多个记录值都是一样的,返回任意一条都可以,则此时对返回值加上max,写法如下:


update test1 t set t.a_salary =
( select max(a.b_salary) from test a where a.b_id = t.a_id
)
where exists (select 1 from test a where a.b_id = t.a_id )


c)、多对多关联
报错ora-01427 :单行子查询返回多条记录
本质上是目标表在源表根据关联ID去找的时候,一个ID找到了多条记录,返回给目标表的一条记录里目标值为多个。
若返回多个记录值都是一样的,返回任意一条都可以,则此时对返回值加上max,写法如下:
update test1 t set t.a_salary =
( select max(a.b_salary) from test a where a.b_id = t.a_id
)
where exists (select 1 from test a where a.b_id = t.a_id )
;


commit;


说明: exists的作用,防止更新没有关联上的记录。若不加exists ,则目标表中无关记录会被置空。故这个exists一定要加上。


总结:
  1、对于更新表内容,一定要把更新内容限制在只要更新的部分,where部分一定要有。


  2、2表关联update的时候,目标表根据关联ID从源表去找记录的时候,,存在ID重复的记录和目标表没有关系,要注意源表存在ID重复的记录。


 对于大表关联update,普通的写法,根本跑不动,百度了一下,根据rowid来更新,果然可以跑动。方法如下:

--t1 为源表


--t2 为要更新的目标表


declare
 cursor cur is
  select
    a.t1_name, b.rowid row_id
    from t1 a, t2 b
    where a.t1_id = b.t2_id
    order by b.rowid;


 v_counter number;

 


begin
 v_counter := 0;
 for row in cur loop
  update t2 t
      set t.t2_name = row.t1_name
    where rowid = row.row_id;
  v_counter := v_counter + 1;
  if (v_counter >= 1000) then
    commit;
    v_counter := 0;
  end if;
 end loop;
 commit;
end;

相关阅读:

Oracle update执行计划原理解析与优化

Oracle 中 update nowait 的使用方法

Oracle存储过程使用实例之update的使用

Oracle update关联表的思路总结 

Oracle for update of 和 for update区别

linux

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

C-Programm zum Ermitteln des größten Primfaktors einer Zahl C-Programm zum Ermitteln des größten Primfaktors einer Zahl Aug 27, 2023 am 10:09 AM

Primfaktor – In der Zahlentheorie sind die Primfaktoren einer positiven ganzen Zahl die Primzahlen, die diese ganze Zahl genau teilen. Der Prozess zum Finden dieser Zahlen wird Ganzzahlfaktorisierung oder Primfaktorisierung genannt. Beispiel: Primfaktoren von 288 sind: 288 = 2 x 2 x 2 x 2 x 2

Top 10 Global Digital Virtual Currency Trading Platform Ranking (2025 Autoritative Ranking) Top 10 Global Digital Virtual Currency Trading Platform Ranking (2025 Autoritative Ranking) Mar 06, 2025 pm 04:36 PM

Im Jahr 2025 sind globale digitale Handelsplattformen für virtuelle Währungen sehr wettbewerbsfähig. OKX steht an erster Stelle mit seiner starken technischen Stärke und globalen Betriebsstrategie, und Binance folgt eng mit hoher Liquidität und niedrigen Gebühren. Plattformen wie Gate.io, Coinbase und Kraken stehen mit ihren jeweiligen Vorteilen im Vordergrund. Die Liste umfasst Handelsplattformen wie Huobi, Kucoin, Bitfinex, Crypto.com und Gemini, die jeweils eigene Eigenschaften haben, aber Investitionen sollten vorsichtig sein. Um eine Plattform auszuwählen, müssen Sie Faktoren wie Sicherheit, Liquidität, Gebühren, Benutzererfahrung, Währungsauswahl und Vorschriften für die behördliche Regulierung berücksichtigen und rational investieren

Top 10 Börsen im Währungskreis in 2025 neueste Rangliste für digitale Währung Apps Top 10 Börsen im Währungskreis in 2025 neueste Rangliste für digitale Währung Apps Feb 27, 2025 pm 06:33 PM

Rangliste der zehn besten Handelsplattformen für virtuelle Währung (neueste im Jahr 2025): Binance: Globaler Führer, hohe Liquidität und Regulierung haben Aufmerksamkeit erregt. OKX: Große Benutzerbasis, unterstützt mehrere Währungen und bietet einen gehebten Handel. Gate.io: Eine Senior -Börse mit einer Vielzahl von Zahlungsmethoden für Fiat -Währung, die eine Vielzahl von Handelspaaren und Anlageprodukten bietet. Bitget: Derivateaustausch, hohe Liquidität, niedrige Gebühren. Huobi: Eine alte Börse, die eine Vielzahl von Währungen und Handelspaaren unterstützt. Coinbase: Ein bekannter amerikanischer Austausch, streng reguliert. Phemex und so weiter.

Top 10 Handelsplattformen für digitale Währung Die neueste Liste der Top 10 Top 10 -Handelsplattformen für digitale Währung Top 10 Handelsplattformen für digitale Währung Die neueste Liste der Top 10 Top 10 -Handelsplattformen für digitale Währung Mar 17, 2025 pm 05:57 PM

Top 10 Handelsplattformen für digitale Währung: 1. OKX, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Bitfinex, 9. Crypto.com, 10. Gemini, diese Austausch haben ihre eigenen Merkmale und Benutzer, die sich auf die Plattform, die sich auf die Plattform handeln, auf der Grundlage von Faktoren, die auf der Grundlage von Sicherheitsfaktoren, die Sicherheit, und die Sicherheit, die sie basieren.

Top 10 Handelsplattformen für digitale Währungs -Apps, regelmäßige Empfehlungen zur Plattform für die Währung Spekulation Plattform Top 10 Handelsplattformen für digitale Währungs -Apps, regelmäßige Empfehlungen zur Plattform für die Währung Spekulation Plattform Mar 07, 2025 pm 06:51 PM

Dieser Artikel empfiehlt zehn Währungsanlagen: 1. OKX; Bei der Auswahl einer Plattform müssen Sie Faktoren wie Sicherheit, Liquidität, Transaktionsgebühren, Währungsauswahl, Benutzeroberfläche, Kundenservice -Support und Vorschriften für den Kundendienst und die Einhaltung von Vorschriften berücksichtigen und die Risiken sorgfältig bewerten und den Trend nie blind befolgen.

Was sind die zuverlässigen digitalen Währungsplattformen? Was sind die zuverlässigen digitalen Währungsplattformen? Mar 17, 2025 pm 05:45 PM

Zuverlässige digitale Währungsplattformen gehören: 1. OKX, 2. Binance, Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Bitfinex, 9. Crypto.com, 10. Gemini.

Die weltweit führende Tutorial Virtual Currency Trading Platform Echtes Download- und Installations -Tutorial Die weltweit führende Tutorial Virtual Currency Trading Platform Echtes Download- und Installations -Tutorial Mar 12, 2025 pm 05:33 PM

Dieser Artikel enthält Android- und Apple Mobile App -Download -Methoden für Mainstream -Handelsplattformen für digitale Währung wie Binance, OKX, Gate.io, Huobi Global, Coinbase, Kucoin, Kraken und Bitfinex. Unabhängig davon, ob es sich um einen Android -Benutzer oder ein Apple -Benutzer handelt, können Sie den offiziellen App -Download -Link für die entsprechende Plattform problemlos finden und die Installation gemäß den Schritten abschließen. Der Artikel enthält detaillierte Anleitungen zum Suchen und Herunterladen auf ihren jeweiligen offiziellen Websites oder App -Stores sowie Anweisungen zu den speziellen Schritten für die Installation von APK -Dateien auf Android, damit Benutzer sie schnell und einfach herunterladen und verwenden können.

Top 10 Top -Handelsplattformen der digitalen Währung App Top10 Virtual Currency App 2025 Ranglisten Top 10 Top -Handelsplattformen der digitalen Währung App Top10 Virtual Currency App 2025 Ranglisten Mar 13, 2025 pm 07:00 PM

Die Rangliste der Top -Ten -Währungsplattformen sind: 1. OKX; Das Ranking basiert auf umfassenden Überlegungen wie Liquidität der Plattform, Währungsauswahl, Sicherheit, Benutzererfahrung, Umgangsgebühren und Compliance, dient jedoch nur als Referenz.

See all articles