mysql:10181
From: UNO Shintaro <UNO Shintaro <uno@xxxxxxxxxx>>
Date: Thu, 16 Sep 2004 20:28:01 +0900
Subject: [mysql 10181] Re: replace()関数の処理
>何故上記クエリがtbl_repの全レコードを舐めてくれないのか、 >何故クエリを複数回実行しないと置換が完了しないのか、 >原因が分かりません。 >どなたか教えて下さい。 tbl_aの内容がこんなので、 id field_n -- ------- 1 ABAB 2 BCDE tbl_repの内容がこんなので、 field_from field_to ---------- -------- A a B b 山下さんが書かれたreplace〜select文を実行すると、 selectのところでできる結果セットはこうです。 id ( join結果: id field_n field_from field_to ) -- ---- ( -- ------- ---------- -------- ) 1 aBaB ( 1 ABAB A a ) 1 AbAb ( 1 ABAB B b ) 2 bCDE ( 2 BCDE B b ) これを使ってreplaceするのですから、置換結果はこんな感じ。 id field_n -- ------- 1 aBaB ←Aの置き換えとBの置き換えを一発で合成はできない 2 bCDE 全レコードを見てはいるわけです。 -- UNO Shintaro, 宇野 信太郎 mailto:uno@xxxxxxxxxx http://www.venus.dti.ne.jp/~uno/
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" ]