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
운영게시판
최근게시물
MS-SQL Q&A 6710 게시물 읽기
No. 6710
제가 구문을 잘못 썼네여 다시 한번 오라클 구문 조언 바랍니다
작성자
최종길(kiri123)
작성일
2013-08-14 09:00
조회수
7,070

UPDATE TABLEA A

 

SET (A.FIELDA,A.FIELDB) = (SELECT NVL(SUM(B.FIELDA),0),NVL(SUM(B.FIELDB),0)

 

FROM TABLEB B

 

WHERE B.FIELDC = @FIELDC

 

AND B.FIELDD = A.FIELDD) <-- 이부분을 잘 못썼네여

 

WHERE A.FIELDC = @FIELDC

 

AND A.FIELDD BETWEEN @FFIELDD AND @TFIELDD

 

AND EXISTS (SELECT C.FIELDD FROM TABLEB C

 

WHERE C.FIELDC = A.FIELDC

 

AND C.FIELDD = A.FIELDD);

 

MS-SQL 로 어떻게 바꿀까여?

 

이 글에 대한 댓글이 총 2건 있습니다.
UPDATE TABLEA
SET FIELDA = ISNULL( B2.fa, 0 )
, FIELDB = ISNULL( B2.fb, 0 )
FROM TABLEA AS A
LEFT OUTER JOIN ( 
SELECT @FIELDC AS fc
, SUM( FIELDA ) AS fa
, SUM( FIELDB ) AS fb
, B.FIELDD AS fd
FROM TABLEB AS B
WHERE B.FIELDC = @FIELDC
GROUP BY B.FIELDD
) AS B2
ON A.FIELDC = B2.fc
AND A.FIELDD = B2.fd
WHERE A.FIELDC = @FIELDC
AND A.FIELDD BETWEEN @FFIELDD AND @TFIELDD
AND EXISTS (
SELECT C.FIELDD 
FROM TABLEB C
WHERE C.FIELDC = A.FIELDC
AND C.FIELDD = A.FIELDD
)
;
 
우욱님이 2013-08-14 09:49에 작성한 댓글입니다. Edit

조언 감사드리고 덕분에 문제가 잘 해결되고 있습니다.

감사드립니다

최종길(kiri123)님이 2013-08-14 10:25에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6714c#, ms-sql 2005 웹페이지 로그인 에러가 자주 발생해서여 [1]
남성식
2013-08-26
8196
6712합계된 금액 조회하기 [1]
헬프미
2013-08-21
7285
6711mssql studio를 이용해서 db에서 db로 복사(백업)할 수 있나요? [1]
박두현
2013-08-20
7233
6710제가 구문을 잘못 썼네여 다시 한번 오라클 구문 조언 바랍니다 [2]
최종길
2013-08-14
7070
6709다음 오라클 구문을 MS-SQL 로는 어떻게 변경하나여? [1]
최종길
2013-08-13
7136
6708테이블의 레코드를 늘여서 보는 방법 없을까여? [2]
최종길
2013-08-12
6890
6707초데이터에서 분당 평균 구하기 [1]
윤창기
2013-08-08
7462
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.052초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다