システム開発ブログ

システムソリューション事業部

MySQL

【MySQL】週数を求める関数

4年ぶりに日本人の大関(琴奨菊)が誕生しました。
同じ年齢ということもあるので応援しています。

みなさん、こんにちは。

大関が「万理一空の境地を求めて日々努力、精進いたします」
と口上を述べたのは「2011/09/28」のことです。
あれから何週間経ったのかを調べたくなりましたので、
MySQLで現在の日付から特定の日付までの週数を求める関数を作成しました。

CREATE FUNCTION SHUSU(date1 DATE, date2 DATE) RETURNS INT(11)
BEGIN
DECLARE shusu INT;
SELECT TRUNCATE((DATEDIFF(date1, date2) / 7), 0) INTO shusu;
RETURN shusu;
END

①「DATEDIFF(date1, date2)」で日付の差を求めます。
②「TRUNCATE((① / 7), 0)」で週数に変換します。

実行結果です。(※2011/10/14に実行しています)
----------
SELECT SHUSU(CURRENT_DATE(), '2011/10/14')
 → 0

SELECT SHUSU(CURRENT_DATE(), '2011/10/13')
 → 0

SELECT SHUSU(CURRENT_DATE(), '2011/10/08')
 → 0

SELECT SHUSU(CURRENT_DATE(), '2011/10/07')
 → 1
----------
口上を述べたのは今から2週間前ということですね。
SELECT SHUSU(CURRENT_DATE(), '2011/09/28')
 → 2

システム周りのお悩みを解決します

まずは無料ダウンロード

この記事に関連する記事の一覧


システム開発ブログ

Twitterでilovex_officialをフォローしてください

カテゴリー

以前の部署別ブログ

ページのトップ