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 6847 게시물 읽기
No. 6847
select -> update 문으로 바꾸기
작성자
김우성
작성일
2014-09-03 15:08
조회수
6,546

select sum(d.Tmoney0), sum(d.ipgo),sum(d.tmoney1) from ipgom_1408 m inner join ipgod_1408 d
 on m.junno=d.junno and d.junno='2014-08-1910005'


update ipgom_1408 set sum(d.Tmoney0), sum(d.ipgo),sum(d.tmoney1) where ipgom_1408 m inner join ipgod_1408 d
 on m.junno=d.junno and d.junno='2014-08-1910005'

select 문은 실행이되는데

update문은 에러가나요...

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

 UPDATE ipgom_1408

SET -- 예를 들어주신 UPDATE 문에는 어떤 컬럼의 값을 갱신하는지가 안 씌여 있어서 이 부분은 건너뜁니다.
FROM ipgom_1408 m 
INNER JOIN ipgod_1408 d 
ON m.junno=d.junno and d.junno='2014-08-1910005'
;
 
우욱님이 2014-09-03 17:06에 작성한 댓글입니다. Edit

ipgod_1408

 

Tmoney0 ipgo tmoney1
3,000 3,000 4,000
5,000 5,000 6,000
-1,250 -1,250 -3,200
800 1,600 1,120
구하고싶은값
7,550 8,350 7,920

ipgom_1408의

sum(d.Tmoney0) = 7,550

 sum(d.ipgo) = 8,350

sum(d.tmoney1) = 7,920

이렇게인데 Where 이나 from 을 넣어도 ')' 근처의 구문이 잘못되었습니다. 라고 합니다

 

김우성(babokws)님이 2014-09-03 22:44에 작성한 댓글입니다.
이 댓글은 2014-09-03 22:45에 마지막으로 수정되었습니다.
CREATE TABLE ipgom_1408
(
junno CHAR(15) ,
Tmoney0 INT ,
ipgo INT ,
tmoney1 INT
)
;
INSERT INTO ipgom_1408( junno ) 
VALUES( '2014-08-1910005' )
;
CREATE TABLE ipgod_1408 
(
junno CHAR(15) ,
Tmoney0 INT ,
ipgo INT ,
tmoney1 INT
)
;
INSERT INTO ipgod_1408( junno, Tmoney0, ipgo, tmoney1 )
VALUES( '2014-08-1910005', 3000, 3000, 4000), 
('2014-08-1910005', 5000, 5000, 6000), 
('2014-08-1910005', -1250, -1250, -3200), 
('2014-08-1910005', 800, 1600, 1120)
;
SELECT * 
FROM ipgom_1408
;
SELECT *
FROM ipgod_1408
;
UPDATE ipgom_1408
SET Tmoney0 = d.Tmoney0
, ipgo = d.ipgo
, tmoney1 = d.tmoney1
FROM (
SELECT kk.junno, SUM( kk.Tmoney0 ) AS Tmoney0, SUM( kk.ipgo ) AS ipgo, SUM( kk.tmoney1 ) AS tmoney1
FROM ipgod_1408 AS kk
WHERE kk.junno='2014-08-1910005'
GROUP BY kk.junno
) AS d
WHERE ipgom_1408.junno='2014-08-1910005'
;
SELECT * 
FROM ipgom_1408
;
우욱님이 2014-09-04 15:10에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
6852랭킹정보 업데이트 하기 [1]
고영훈
2014-09-26
6690
6851두개의테이블을 한번에 업데이트 하기 [3]
김우성
2014-09-21
6355
6848조건이 1인것과 0인것 구별해서 합계내기 [1]
김우성
2014-09-06
6104
6847select -> update 문으로 바꾸기 [3]
김우성
2014-09-03
6546
6846MDB UPDATE시 문자열 내에 있는 아포스트로피( ' ) [1]
전일동
2014-09-03
6429
6845쿼리질문 드립니다. [3]
고재원
2014-09-02
6891
684450 단위로 맞추기 [5]
김우성
2014-08-31
6339
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다