database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 9851 게시물 읽기
No. 9851
update query에 관련된 글입니다.
작성자
김병영(reand2000)
작성일
2017-06-14 11:38
조회수
6,845

table2의 결과값

d1 d2 d3 d4 b1 b2

1 2 3 4 1 0

10 20 30 40 2 0

 

table1의 p[] 배열값

{{0,0,0,0},{0,0,0,0}}

 

 

update table1

set p[a.b1][1] = a.d1

, p[a.b1][2] = a.d2

, p[a.b1][3] = a.d3

, p[a.b1][4] = a.d4

from (

select d1, d2, d3, d4, b1, b2 from table2

) as a (d1,d2,d3,d4,b1,b2)

where fcst_area = a.b2

 

update 결과값

{{0,0,0,0},{10,20,30,40}}

 

제가 생각한 결과값은

{{1,2,3,4},{10,20,30,40}}

이렇게 나왔어야하는거 같은데 마지막 값만 바뀌어서.. 왜그런건지 설명좀 부탁드립니다.

 

그리고 만약에 순서대로 바꿀려면 어떻게해야하는지도 알고싶습니다.

이 글에 대한 댓글이 총 3건 있습니다.

table1 테이블의 p 값은 p[1][1] ,... p[2][4] 까지 총 여덟번의 set 정의가 있어야 모두 바뀌겠지요.

 

김상기(ioseph)님이 2017-06-14 16:03에 작성한 댓글입니다.

그말은 row 갯수랑 상관없이 한번만 입력된다는 말씀이신건가요?

김병영(reand2000)님이 2017-06-15 15:24에 작성한 댓글입니다.

where fcst_area = a.b2 에서

fcst_area 는 잘 모르겠는데 b2 값이 두번다 0이라서 한번만 나온게 아닐까요..

 

 

somekill(somekill)님이 2017-07-31 17:55에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
9854ora2pg를 사용하기 위한 DBD::Oracle 설치 시 에러 [3]
postgres
2017-06-20
7558
9853PostgreSQL Query 최신순 출력 방법 [1]
Hoon
2017-06-19
7216
9852index "logreg_0" contains unexpected zero page at block 0 메세지가 발생하는 원인 [2]
탁구공
2017-06-16
7129
9851update query에 관련된 글입니다. [3]
김병영
2017-06-14
6845
9850가상컬럼이 되나요? [3]
hyeon
2017-06-13
6935
9849INNER JOIN 구문이 이상합니다.. 쿼리 잘못된 부분 좀 봐주십시오 [2]
비타민
2017-06-13
7053
9848설정에 관한 질문입니다. [2]
전성용
2017-06-12
6817
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.050초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다