Oracle에서는 다음과 같이 하면 됩니다.
update user a
set field= field +(select count(*)
from board
where id=a.id)
where uid > 0
>>muze 님께서 쓰시길<<
:: 음. 작업을 하다가 궁금한게 있어서 질문을. ^^; 프로그래밍적으로는 쉽게 할수 있겠는데 혹시 다음과
:: 같은 쿼리문을 한번에 구성할 수 있을까요. MySQL이 아니라면 다른 DB라도 가능한지 궁금합니다.
::
:: 1. SELECT id, count(*) AS total FROM board GROUP BY id ORDER BY total DESC
::
:: 2. UPDATE user SET field = field + (1번에서 받은 total값) WHERE uid(자동증가넘버) > 0 and id = (
:: 1번에서 받은 id값)
::
:: MySQL 메뉴얼을 보니 UPDATE에서 SELECT에 관련된 것은 없더군요. 사용하고 있는 MySQL 버젼은 3.23.32
:: 입니다.
|