오늘 저도 같은 경우를 겪었는데,
이것은 PostgreSQL의 퀴리 파싱에 대한 기타 다른 RDBMS과의 견해차이(?) 같습니다.
아무튼 이런 문제를 해결하려면,
다음과 같은 쿼리형태여야지 의도한대로 움직이더라군요.
update product
set quantity = product.quantity + b.amount
from order_prd b
where product.prd_id = b.prd_id and b.order_id = 58
-- 손재면 님이 쓰신 글:
>> update product
>> set quantity = a.quantity + b.amount
>> from product a, order_prd b
>> where a.prd_id = b.prd_id and b.order_id = 58
>>
>> ---------------------------------------------------------------
>> 쇼핑몰 재고량 수정하는 sql문인데요
>>
>> 주문번호가 58번인 주문수량만큼 상품 테이블의 재고량을 증가
>> 하는 내용입니다...
>>
>> MSSQL에서는 의도한데로 sql문이 먹는데
>> postgresql에서는 전체 재고량이 모두 다 바뀌어 버리네요...글쎄
>>
>> 어디가 잘못되었는가요?
>> 좀 알려주세요들...please....-,.-;
|