MySQL データベースでタイムスタンプを扱う場合、多くの場合、タイムスタンプを読み取り可能な日付形式に変換する必要があります。この記事では、この問題の解決策を検討し、クエリ内でタイムスタンプ値を「yyyy-mm-dd」形式に変換するための包括的なガイドを提供します。
提供される SQL ステートメント:
$sql = requestSQL("SELECT user.email, info.name, FROM_UNIXTIME(user.registration), info.news FROM user, info WHERE user.id = info.id", "export members");
user.registration に保存されているタイムスタンプを日付文字列に変換しようとします。ただし、DATE_FORMAT() 関数と DATE() 関数を使用して提供された試みでは、満足のいく結果が得られません。
最適な解決策には、タイムスタンプ値を Unix タイムスタンプに変換するネストされた関数 FROM_UNIXTIME() を DATE_FORMAT() と組み合わせて利用することが含まれます。 、指定された書式文字列に基づいて日付を書式設定します。次のコード スニペットは、修正されたクエリを示しています。
SELECT user.email, info.name, DATE_FORMAT(FROM_UNIXTIME(`user.registration`), '%e %b %Y') AS 'date_formatted', info.news FROM user, info WHERE user.id = info.id
この修正されたクエリでは、FROM_UNIXTIME() 関数が user.registration から Unix タイムスタンプを抽出し、DATE_FORMAT() が '%e %b %Y を適用します。 ' 形式文字列を使用して、'yyyy-mm-dd' 形式の日付に変換します。 AS 'date_formatted' のエイリアスを使用すると、クエリ結果の date_formatted 列を使用して変換された日付を取得できます。
この強化されたアプローチを組み込むことで、MySQL クエリでタイムスタンプ値を使いやすい日付形式に簡単に変換できるようになりました。柔軟なデータ取得と操作機能を提供します。
以上がMySQL クエリでタイムスタンプを「yyyy-mm-dd」日付に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。