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 8649 게시물 읽기
No. 8649
Update 관련 질문
작성자
김기룡(guest103)
작성일
2010-04-05 00:41ⓒ
2010-04-05 00:52ⓜ
조회수
7,429

이번 업무에서 PostgreSQL을 사용하게 되었습니다.

외국에서는 유명하다고 하던데 문법이 조금 낯설더라구요^^

혹시 PostgreSQL에서 특정 컬럼의 값을 상황에 따라서 업데이트가 가능한지요?

 

예를들어, A테이블에 STAT 컬럼이 있는데 이 컬럼은 col1 컬럼과 col2 컬럼의 값을 비교해서

col1 컬럼이 col2 컬럼보다 작다면 1, 그렇지 않다면 2인경우...

UPDATE A SET STATE = 1 WHERE COL1 < COL2;

UPDATE A SET STATE = 2 WHERE COL1 >= COL2;

위 처럼 SQL문을 각 상황별로 2번 호출하는것 보다는 1번에 호출하는게 효율적인것 같은데

PostGrel에서는 어떤 식으로 처리 할 수 있는지 궁금합니다.

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

update a set state = case

when col1 < col2 then 1

else 2

end

where ....

이런 형태가 되겠죠.

요지는 case when ... then ... else ... end 구문으로 풀어냅니다.

 

김상기(ioseph)님이 2010-04-06 10:09에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
8652로그 분석 좀 부탁드립니다. [1]
왕초보
2010-04-10
7491
8651postgreSQL로 pda가 붙을수 있나요? [2]
함성호
2010-04-06
9555
8650물리적으로 하나의 DB서버에서 다른db table을 사용할려면? [1]
이기자
2010-04-06
7621
8649Update 관련 질문 [1]
김기룡
2010-04-05
7429
8648postgreSQL에서 mysql로 dblink ? [1]
이기자
2010-04-02
8694
8647postgres 에서 pg_pconnect [1]
박기홍
2010-04-01
8127
8646포스트 그래스에서 rank() over () [1]
질문자
2010-04-01
8859
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다