2010-12-31 9 views
0

私は1つのカラム "textField"を持つテーブルを持っています。私たちのバージョンのmysqlではフルテキストフィールドがデフォルト値を持つことはできません。デフォルトはnullです。テキストフィールドへの連結

私たちは私たちのテーブルを更新したい場合は、我々はそうのように、テキストフィールドにあるものに価値を付加したい:

更新テーブルセットテキストフィールド= CONCAT(テキストフィールド、「の値」)...これは時にそこに働きます既にフィールドにあるものですが、フィールドがnullの場合は機能しません。 mysqlはフルテキストフィールドのデフォルト値を許可しないので、上記の文は機能しません。 nullではないが、次に行った場合だけ... W値/更新そのフィールドがそうであれば2 nullの場合、連結&をしない 1.チェック:

ソリューションは、2つのクエリを実行することですconcat

私たちがそれを避けることができたら、2つのクエリを実行するのではなく、1つのライナーの代替方法が有効でしょうか?

答えて

2

これを試してみてください:

update table set textField = concat(COALESCE(textField, '') ,'value')... 
1
concat(ifnull(textfield, ''), 'value')