[Oracle] [Oracle] Update Select 방법 및 bypass_ujvc

 

[Oracle] Update Select 방법 및 bypass_ujvc
IT/Database 2019. 2. 18. 15:35

Update Select 방법 1


1
2
3
4
5
UPDATE 테이블A A
SET ( A.업데이트 받을 컬럼 ) = ( SELECT B.업데이트 할 컬럼
                                  FROM 테이블 B B
                                WHERE B.NO = '특정번호' )
WHERE A.NO ='특정번호';
cs

 

 

 

Update Select 방법 2


1
2
3
4
5
6
7
UPDATE 테이블A A
SET ( A.aa, A.bb ) = ( SELECT B.aa, B.bb
                         FROM 테이블 B B
                        WHERE B.id = A.id )
WHERE EXISTS ( SELECT B.aa, B.bb
                 FROM 테이블 B B
                WHERE B.id = A.id )
cs

 

 

 

Update Select 방법 3


1
2
3
4
5
6
UPDATE  /*+ BYPASS_UJVC */      
    (SELECT A.aa, B.bb
        FROM 테이블 A, 테이블 B
        WHERE A.id= B.id
    )
SET    B.aa= A.aa  ;
cs

 

1. 조인되는 2개의 테이블은  1:1, 1:M의 관계

2. Update되는 테이블은 M쪽 집합

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

-> 이 말은 1쪽 집합의 조인 컬럼이 PK로 설정되어 있어야 하는건데

이 조건을 만족하지 않으면 키보존 테이블 위배 된다며 에러를 내고 실행되지 않습니다.

(pk로 설정되어 있지 않더라도 사실 상 중복되는 컬럼이 없어도 안된다...)

 

이것을 회피하게 해주는 힌트가 bypass_ujvc입니다.

오라클 11g이후부턴 merge into사용을 권고하고 

bypass_ujvc힌트는 없어졌습니다.

 

 

 

[출처] https://devjjo.tistory.com/44

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
공지 오라클 기본 샘플 데이터베이스 졸리운_곰 2014.01.02 87625
공지 [SQL컨셉] 서적 "SQL컨셉"의 샘플 데이타 베이스 SAMPLE DATABASE of ORACLE 가을의 곰을... 2013.02.10 79746
공지 [G_SQL] Sample Database 가을의 곰을... 2012.05.20 96462
42 [ms sql server] SQL Server 2019 Express 외부 접속을 위한 처리 file 졸리운_곰 2024.07.27 1625
41 [ms sql server] MS-SQL 2019 Express 와 SSMS 를 설치하고 DB, 사용자 추가 후 네트워크 설정하기 file 졸리운_곰 2024.07.27 1530
40 데이터 입력/수정/삭제를 한 번에 처리할 수 있는 MERGE에 대해 알아보자 file 졸리운_곰 2020.09.10 1866
39 SQL Server PIVOT : ms sql server Row Column Pivot 로우 컬럼변환 file 졸리운_곰 2020.06.13 1657
38 MSSQL 로우를 컬럼으로 졸리운_곰 2020.06.13 1681
37 [MS SQL] FROM - PIVOT 및 UNPIVOT 사용 졸리운_곰 2020.06.13 966
36 [MSSQL] 3개 이상 테이블 조인 file 졸리운_곰 2020.05.16 1605
35 [MSSQL] 경고: 집계 또는 다른 SET 연산에 의해 Null 값이 제거되었습니다. 졸리운_곰 2020.01.31 1680
34 [MSSQL] 경고: 집계 또는 다른 SET 작업에 의해 Null 값이 제거되었습니다. file 졸리운_곰 2020.01.31 1881
33 MS-SQL 트리거 사용하기 (간략 공략!?!?) file 졸리운_곰 2020.01.31 1464
32 [ms sql server] T-SQL 저장 프로시져 만들기 : CREATE PROCEDURE(Transact-SQL) file 졸리운_곰 2020.01.27 1935
31 [ms sql server] 저장 프로시저 만들기 file 졸리운_곰 2020.01.27 1102
30 Installing Microsoft SQL Server in Docker SQL Server and Docker file 졸리운_곰 2020.01.26 9162
29 MS SQL Stored Procedure file 졸리운_곰 2020.01.26 1690
28 [MSSQL] 저장 프로시저 만들기 실습 file 졸리운_곰 2020.01.26 1679
27 MS-SQL 에서 한글 검색이 안되는 경우 졸리운_곰 2020.01.24 1427
26 mssql 2012 언어변경 질문드립니다. file 졸리운_곰 2020.01.23 1514
25 [MS-SQL] 쿼리문 정리 file 졸리운_곰 2020.01.23 1944
24 [DB/Docker/MSSQL] Docker + MSSQL 개발하기 졸리운_곰 2020.01.23 1379
23 Linux에서 환경 변수를 사용하여 SQL Server 설정 구성 file 졸리운_곰 2020.01.23 1264
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED