반응형
Oracle: 기존 값에 추가하여 데이터 행 업데이트
데이터베이스(Oracle 11g)에 큰 테이블이 있으며 여기서 특정 번호가 있는 테이블의 열을 업데이트합니다.a를 설정하여 업데이트하고 싶습니다.prefix
이 열의 모든 값 앞에 있습니다.
예제(특정 번호는int
그리고 PK, Value1은Varchar2
마지막 열도 마찬가지입니다.):
실제 데이터:
[SpecificNumber] [Value1] [column2gettingupdated]
[1] 123456789 Test text
[2] 123456789102 sth text2
[3] 12233 text test3
향후 데이터(내 sql 이후):
[SpecificNumber] [Value1] [column2gettingupdated]
[1] 123456789 Test PREFIX-text
[2] 123456789102 sth PREFIX-text2
[3] 12233 text PREFIX-test3
그래서 제가 생각한 것은:
Update table
set column2gettingupdated=("prefix"+
(select column2gettingupdated from table where SpecificNumber = '12233')
)
where SpecificNumber = '12233';
하지만 그건 내게 의미가 있습니다.ORA-00904: "p": invalid identifier
오류를 범실.
내가 이걸 해보면,
Update table
set column2gettingupdated=("prefix"+
(select column2gettingupdated from table where SpecificNumber = '12233')
)
where SpecificNumber = '12233';
나는.ORA-01722: invalid number
오류를 범실.
이게 가능하긴 해요?당신의 도움에 벌써 감사합니다!
연결 연산자만 사용하면 되고,||
. 업데이트 구문에는 하위 쿼리를 가져올 필요가 없습니다.column2gettingupdated
값의 경우 12233입니다.
또한 Oracle VARCHAR2에서는 큰따옴표가 아니라 작은따옴표를 사용합니다.따라서 이 문에 대한 구문은 다음과 같습니다.
UPDATE table
SET column2gettingupdated = 'prefix' || column2gettingupdated
WHERE SpecificNumber = 12233;
예제 스키마 SCOT의 예제는 다음과 같습니다.
SCOTT@dev> CREATE TABLE DEPT2 as (
2 SELECT *
3 FROM DEPT
4 );
Table created.
SCOTT@dev> commit;
Commit complete.
SCOTT@dev> UPDATE DEPT2
2 SET DNAME = 'PRE '|| DNAME
3 WHERE DEPTNO = 20;
1 row updated.
SCOTT@dev> commit;
Commit complete.
SCOTT@dev> SELECT *
2 FROM dept
3 WHERE deptno = 20
4 UNION
5 SELECT *
6 FROM dept2
7 WHERE deptno = 20
8
SCOTT@dev> /
DEPTNO DNAME LOC
========== ============== =============
20 PRE RESEARCH DALLAS
20 RESEARCH DALLAS
문자열에 연결 사용:
update <table_name>
set column2gettingupdated = 'Prefix-' || column2gettingupdated
where specificnumber = 12233; -- use NUMBER literal instead of string one
언급URL : https://stackoverflow.com/questions/26405864/oracle-update-a-datarow-by-adding-to-existing-value
반응형
'sourcetip' 카테고리의 다른 글
연락처 양식 7 수신자의 동적 수 (0) | 2023.10.25 |
---|---|
워드프레스에서 기본 화면 옵션을 변경하는 방법 (0) | 2023.10.25 |
PDF 파일을 외부 액세스로부터 보호합니다.인증된 사용자만 액세스할 수 있습니다.WordPress 업로드 디렉토리 (0) | 2023.10.25 |
해스켈 FFI가 C로 들어갔다가 다시 돌아오는데 얼마입니까? (0) | 2023.10.25 |
':'(콜론)은 자바스크립트에서 무엇을 합니까? (0) | 2023.10.25 |