ホームページ > データベース > mysql チュートリアル > 関数を使用して 2 つの日付値間の年、月、日の差を返すにはどうすればよいでしょうか?

関数を使用して 2 つの日付値間の年、月、日の差を返すにはどうすればよいでしょうか?

王林
リリース: 2023-08-23 16:53:32
転載
1065 人が閲覧しました

関数を使用して 2 つの日付値間の年、月、日の差を返すにはどうすればよいでしょうか?

以下に示すように、パラメータとして日付値を受け取り、年、月、日の差を返す関数を作成できます。

mysql> CREATE FUNCTION date_difference(Date1 DATE, date2 DATE) RETURNS VARCHAR(30)
   -> RETURN CONCAT(
   -> @years := TIMESTAMPDIFF(YEAR, date1, date2),IF (@years = 1, ' year, ', ' years, '),
   -> @months := TIMESTAMPDIFF(MONTH, DATE_ADD(date1, INTERVAL @years YEAR), date2),IF (@months = 1, ' month, ', ' months, '),
   -> @days := TIMESTAMPDIFF(DAY, DATE_ADD(date1, INTERVAL @years * 12 + @months MONTH), date2),IF (@days = 1, ' day', ' days')) ;
   Query OK, 0 rows affected (0.00 sec)
ログイン後にコピー

次に、日付値を追加します。引数として関数に渡されます date_difference

mysql> Select date_difference('2015-11-16','2016-12-17') AS Difference;
+------------------------+
| Difference             |
+------------------------+
| 1 year, 1 month, 1 day |
+------------------------+
1 row in set (0.00 sec)
ログイン後にコピー

上記の結果セットは、指定された 2 つの日付の差を関数の引数として返します。

以上が関数を使用して 2 つの日付値間の年、月、日の差を返すにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート