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 6293 게시물 읽기
No. 6293
자동으로 계산되는 필드가 있는지..??
작성자
몰라
작성일
2005-08-26 14:57
조회수
2,081

안녕하세요..

예를 들자면 파이어버드(인터베이스) 같으거에 보면

create table test(

seq int,

price int,

quantity int,

tot computed by(price * quantity)

);

 

이렇게 하면 tot 필드에 자동으로 값이 계산되는데.. oracle/postgresql 엔 관련 내용이 있는지점..??

그럼..수고하시구여..?

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

test라는 테이블에서 tot라는 필드를 빼고 만드신 후 같은 내용의 view를 만드실 때 tot라는 필드를 추가 하시면 되겠습니다..

신기배(소타)님이 2005-08-26 15:12에 작성한 댓글입니다.

RULE이라는 것을 이용하셔도 되겠습니다.

자세한 내용은 메뉴얼의 RULE 부분을 보시면 됩니다.

김현만님이 2005-08-27 12:38에 작성한 댓글입니다. Edit

여러가지 방법이 있군요. 장난 삼이 몇가지 더 생각하면...

 

음냐... 굳이 하겠다면 tot라는 컬럼을 만들어 놓고 insert나 update시 트리거로 계산해서 미리 결과를 저장해 놓는 방법도 있겠네요. 하지만 저장공간만 차지하고 속도에 별 도움이 안될듯...

 

저라면 그냥 쿼리문에서 price*quantity as tot로 얻어오겠습니다. 필요 없는 view나 rule은 안 만드는게 정신 건강에 이로워서요.

 

가장 좋은 것은 그냥 price와 quantity를 읽어와서 프로그램에서 tot 값을 얻는 것... 우하하하.... DB를 너무 불쌍히 여기는 마음에 가능하면 단순일만 시킨답니다.

박성철(gyumee)님이 2005-08-27 19:00에 작성한 댓글입니다.
이 댓글은 2005-08-27 19:01에 마지막으로 수정되었습니다.

ㅎㅎㅎ 전 DBMS를 혹사시키는 -_-;

테이블 만들고 나면 항상 같은 구조라도 뷰를 맹글어서 룰로 싱크시키고 어플에서는 실제 테이블에 접근 자체를 막아버립니당.. 완전히 구조가 같거나 보여줄 내용이 같은건 얼마 안되지만;;

덕분에 뷰 갯수가 테이블의 거의 두배 정도.. 음 -.-

신기배(소타)님이 2005-08-28 22:05에 작성한 댓글입니다.

 

개인적인 생각으론 computed라는 기능이 왜 필요한지 모르겠네요...

머.. 뷰도 있고.. select할때 계산해도 되고.. rule도 있고....

 

그냥 쉬운 방법으로 하는게 최선의 방법인듯 합니다.

최정대(whitekid)님이 2005-08-30 02:15에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6298sequence를 Rename하는 방법이 있나요? [4]
최정대
2005-08-30
2046
6297PostgreSQL 8.1 Enters Beta [5]
신기배
2005-08-29
3366
6294[질문]테이블 두 개를 검색할 때 [3]
박병호
2005-08-29
1902
6293자동으로 계산되는 필드가 있는지..?? [5]
몰라
2005-08-26
2081
6292psql 쓰는데 트랜잭션 관리가 이상한 듯 합니다 [2]
코모리
2005-08-25
2856
6291구문에러..
장재혁
2005-08-25
1804
6290DB접속 질문합니다. [1]
neo
2005-08-25
3081
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다