MySQL の異なる日付フィールドから日付オブジェクトを作成する
データベース スキーマの日付表現が個々の日、月、および year フィールドは、SQL での日付操作に独特の課題をもたらします。ただし、次のアプローチを使用すると、これらの個別のフィールドから日付オブジェクトを効果的に構築できます。
年、月、日を表す整数値から DATETIME オブジェクトを作成するには、MAKEDATE() と DATE_ADD() の組み合わせを利用します。 ) 関数。
これらの関数を組み合わせることで、日付を構築できます徐々に:
例:
SELECT DATE_ADD(DATE_ADD(MAKEDATE(2013, 1), INTERVAL (3)-1 MONTH), INTERVAL (11)-1 DAY);
このクエリは、2013 年 3 月 11 日の DATETIME オブジェクトを返します。
この手法を使用して、SQL で比較するための日付範囲を構築できるようになりました。クエリ:
SELECT * FROM `date` WHERE DATE_ADD(DATE_ADD(MAKEDATE(year, 1), INTERVAL (month)-1 MONTH), INTERVAL (day)-1 DAY) BETWEEN '2013-01-01' AND '2014-01-01';
このクエリは、2013 年 1 月 1 日から 2014 年 1 月 1 日までの日付を持つすべてのレコードを日付テーブルから取得します。
以上がMySQL で年、月、日の別々のフィールドから日付オブジェクトを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。