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
운영게시판
최근게시물
Sybase Q&A 2374 게시물 읽기
No. 2374
쿼리 문의
작성자
고복수(us24moon)
작성일
2008-12-15 20:47
조회수
7,921

update table_A

set

 column_Ac = sum(

  case when column_Bb ='10001200' then column_Bc

              when column_Bb ='10001220' then -column_Bc

              when column_Bb ='10001201' then column_Bc

              when column_Bb ='10001221' then -column_Bc 

              when column_Bb ='10001299' then column_Bc    

  end  

 ) 

from  table_B

where column_Ba = '200810'

   AND column_Bb IN

     ('10001200', '10001220','10001201', '10001221', '10001299')

   and column_Bd=column_Be

   AND column_Bd = column_Ad

   and column_Ba = convert(char(6),column_Aa,112)







table_A의 column_Aa,column_Ab,column_Ac,column_Ad,column_Ae,

table_B의 column_Ba,column_Bb,column_Bc,column_Bd,column_Be 

로 구성이 되어있을때,


제가 update할려는건 table_A의 column_Ac를  table_B의 column의 sum값으로 update를 하고 싶은데, 

단,table_A와 table_B의 

   AND column_Bd = column_Ad

   and column_Ba = convert(char(6),column_Aa,112)

인 값만 update를 하고 싶은데, 위에 처럼 하면, table_A의 모든 row가 update가 되네요...


뭐가 잘못된건가요???

이 글에 대한 댓글이 총 1건 있습니다.
update table_A
set column_Ac = b.amt
from ( select column_Ba,
              column_Bd,
              sum(column_Bc*( case when column_Bb ='10001220' then -1
                                   when column_Bb ='10001221' then -1
                                   else 1
                              end
              ) as amt
         from table_B
        where column_Ba = '200810'
          and column_Bb IN  ('10001200', '10001220','10001201', '10001221', '10001299')
          and column_Bd=column_Be
        group by column_Ba, column_Bd
     ) b,
     table_A a
where
  and b.column_Bd = a.column_Ad
  and b.column_Ba = convert(char(6),a.column_Aa,112)

해보세요...........
김용암(aasome)님이 2009-02-13 18:43에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
2377unix에 odbc 또는 pc client 설치가능여부 ? [1]
홍재표
2008-12-17
8531
2376ms-sql, sybase 테이블 조인 [1]
한상석
2008-12-16
8849
2375varchar 을 dynmamic sql 로 select 시 크기 제한 [1]
비상
2008-12-15
8142
2374쿼리 문의 [1]
고복수
2008-12-15
7921
2372SUM 오라클과 sybase의 차이 궁금 [1]
AZA
2008-12-11
9883
2371조건절에 갯수를 지정하여 가져오고 싶은데여... [1]
왕초보
2008-12-10
8550
2370날짜을 다른 형식으로 변환 하는 방법 아시는 분 [3]
시야
2008-12-08
9014
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.028초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다