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

mysql:10172

From: "Takashi Yamashita" <"Takashi Yamashita" <takasi@xxxxxxxxxx>>
Date: Thu, 16 Sep 2004 10:19:46 +0900
Subject: [mysql 10172] replace()関数の処理

お世話になっております。

update tbl_a set field_n=replace(field_n, 'from_str', 'to_str');
上記のような処理は実現可能ですので使わせていただいています。

現在、以下のような処理を実行させたいと考えております。
update tbl_a
set field_n=
replace(field_n, select field_from from tbl_rep, select field_to from
tbl_rep);

このような処理は恐らく副問い合わせに当たると思いますので、
そのままでは実現できません。
ですので、現状はphpと組み合わせて以下のような処理で実現しています。
$hResult=mysql_query("select field_from, field_to from tbl_rep");
while($row=mysql_fetch_array($hResult)) {
    mysql_query(
        sprintf("update tbl_a set field_n=replace(field_n,'%s','%s')",
            $row[field_from], $row[field_to]);
}
mysql_free_result($hResult);

このような処理をphpによる制御を介在させず、
テンポラリテーブル等を駆使して、
クエリのみで完結させる事は可能でしょうか?

教えて下さい。
mysql:4.0.17、php:4.2.3、apache:1.3.27、vine:2.6
です。

宜しくお願いします。

-------------------------------------------------------------
山下高司
takasi@xxxxxxxxxx



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

->   10172 2004-09-16 10:19 ["Takashi Yamashita" ] replace()関数の処理                     
     10173 2004-09-16 11:07 ┗["片寄白王" <katayose]                                       
     10174 2004-09-16 11:31  ┗["Takashi Yamashita" ]                                     
     10179 2004-09-16 18:06   ┣["片寄白王" <katayose]                                   
     10180 2004-09-16 19:21   ┗["Takashi Yamashita" ]                                   
     10181 2004-09-16 20:28    ┗[UNO Shintaro <uno@xx]                                 
     10184 2004-09-16 21:53     ┗["Takashi Yamashita" ]                               
     10192 2004-09-17 12:18      ┗[UNO Shintaro <uno@xx]                             
     10193 2004-09-17 13:31       ┗["Takashi Yamashita" ]