勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

MySQLで指定カラムの文頭もしくは文末に文字を追記する方法

MySQLで特定カラムの文頭もしくは文末に年月日日時(YmdHis)を追記したいというケースが偶にあるが、今までは一旦当該データを取得しPHP側で追記した後にupdateしていた。ただ、最近見たソースコードでCONCATを用いてスマートに対応している方法があったので忘れないようにメモ。

 

対応方法

ソースコード

/* 文頭に追記 */
UPDATE `test_table` 
SET `mail` = CONCAT(DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'), '_', `mail`)
WHERE id = 1;

/* 文末に追記 */
UPDATE `test_table` 
SET `mail` = CONCAT(`mail`, '_', DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'))
WHERE id = 1;

mailカラムの文頭もしくは文末にYmdHis形式の文字を追記するという内容になる。バッククォートとシングルクォーテーションが混合しているので注意すること。

 

リファレンス

CONCAT

https://dev.mysql.com/doc/refman/8.0/ja/string-functions.html#function_concat

 - MySQL / MariaDB データベース

  関連記事

MySQLでテキスト(日本語、半角英数字)を暗号化・復号化する方法
MySQLでテキスト(日本語、半角英数字)を暗号化・復号化する方法

MySQLでデータを登録する際に暗号化したいというケースがあった。対象のデータは ...

MySQLで特定カラムの<br>タグを改行コードに一括置換させる方法
MySQLで特定カラムの
タグを改行コードに一括置換させる方法

MySQLで特定カラムの<br>タグを改行コードに一括置換したかった ...

MySQLにてUUIDを発行しプライマリキー(主キー)にする方法
MySQLにてUUIDを発行しプライマリキー(主キー)にする方法

普段MySQLでプライマリキー(主キー)を使う場合、オートインクリメントを利用し ...

MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法
MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法

他社が作成されたSQL文を見ているとDATE_ADDという使ったことの無い関数が ...

MySQLで指定したカラムの中央値を抽出する方法
MySQLで指定したカラムの中央値を抽出する方法

MySQLで指定したカラムの中央値を抽出したいというケースがあった。MariaD ...