FROM_UNIXTIMEを使ってUNIXTIMEから文字列への変換を行う。

これまで、DB上に登録されているUNIXTIMEを日付形式の文字列に変換するときは、一旦データを取り出してからアプリ側で変換していた。 ところが、MySQLではFROM_UNIXTIMEという関数を使えばSQLだけでこの操作を完結することができる。

SELECT FROM_UNIXTIME(1492138800, "%Y-%m-%d %h:%i:%s");
# => 2017-04-14 12:00:00

第一引数がUNIXTIME、第二引数が文字列に変換した時のフォーマット。 何時の指定が「%i」なのに注意。

最近はログの集計をSQLで書いて結果をつくる、ということが多くなった。 アプリに実装を書かなくて良くなるので、非常にありがたい関数である。