[前][次][番号順一覧][スレッド一覧]

mysql:11288

From: Manabu Tatesawa <Manabu Tatesawa <mabu@xxxxxxxxxx>>
Date: Mon, 28 Mar 2005 21:42:46 +0900
Subject: [mysql 11288] Re: _[mysql_11190]_updat e文の_set句に集合関数countを使いたい

館澤です。

ご返答、どうも有難う御座います。

4.1ではselect結果をテーブルのように扱えること(サブクエリー?)を
利用して、間接的に集合関数の結果を set するのですね。
#なるほど!です。

4.1以前のMySQLだと、やはりテンポラリテーブルを使うか
delete+insert の方法しかないということで納得です。

非常に参考になりました。
どうも有難う御座います。


Akira Kuroda wrote:
> 黒田と申します.
(snip)
> 4.1.x ではこういう SQL で更新できました.
>  update TCount c, (select name, count(*) as cnt from tname group by name) n
>      set c.cnt = n.cnt
>    where c.name  = n.name
> 
> それ以前であれば 2段階に分けるしかないと思います.
> 1. tname と tcount を join してマッチするレコードを tcount から delete
> 2. tname と tcount を join して count を計算して tcount に insert


-- 
館澤学
mabu@xxxxxxxxxx

[前][次][番号順一覧][スレッド一覧]

     11190 2005-03-18 14:26 [Manabu Tatesawa <mab] update文のset句に集合関数countを使いたい
     11287 2005-03-28 20:56 ┗[Akira Kuroda <akurod] Re: _[mysql_11190]_updat e文の_set句に集合関数co_untを使いたい
->   11288 2005-03-28 21:42  ┗[Manabu Tatesawa <mab] Re: _[mysql_11190]_updat  e文の_set句に集合関数countを使いたい