【MySQL】文字列カラムに追加で更新する方法について(CONCAT)
VARCHAR や TEXT で定義されている文字列カラムに対して、文字列の追加更新を行う場合には
以下の様に CONCAT 関数を使って更新を行います。
この方法で一見よさそうなのですが、 更新対象のカラムが元々 NULL の場合には結果として NULL と更新されてしまいます。
CONCAT 関数は連結するデータが NULL の場合には NULL を返すため、 結果として対象のカラムが NULL に更新されます。
そこで以下の様に IFNULL 関数で NULL の場合には空文字('')の判定を行ってやります。
これで何とか目的の更新処理が行えると思います。
■関連記事
⇒【MySQL】テーブルカラムは大文字・小文字の区別が無いので注意が必要
⇒【MySQL】テーブル作成時にカラムにAUTO_INCREMENTを設定する方法について
⇒【MySQL】テーブルカラムに後からAUTO_INCREMENTを設定する方法について
⇒【MySQL】文字列カラムに追加で更新する方法について(CONCAT)
⇒【MySQL】既に存在するTABLEに複数カラムを位置指定で追加する方法について(ALTERTABLE)
この方法で一見よさそうなのですが、 更新対象のカラムが元々 NULL の場合には結果として NULL と更新されてしまいます。
CONCAT 関数は連結するデータが NULL の場合には NULL を返すため、 結果として対象のカラムが NULL に更新されます。
そこで以下の様に IFNULL 関数で NULL の場合には空文字('')の判定を行ってやります。
これで何とか目的の更新処理が行えると思います。
■関連記事
⇒【MySQL】テーブルカラムは大文字・小文字の区別が無いので注意が必要
⇒【MySQL】テーブル作成時にカラムにAUTO_INCREMENTを設定する方法について
⇒【MySQL】テーブルカラムに後からAUTO_INCREMENTを設定する方法について
⇒【MySQL】文字列カラムに追加で更新する方法について(CONCAT)
⇒【MySQL】既に存在するTABLEに複数カラムを位置指定で追加する方法について(ALTERTABLE)
コメント