LoginSignup
0
1

More than 5 years have passed since last update.

期間をSQLで取得する

Posted at

columnに、StartとEndがあった場合に、
その期間がどのぐらいあったのかを調べるSQLをメモメモ。

sql文
select  (CASE 
WHEN TIMESTAMPDIFF(MONTH,@op,@ed) = 0 
    THEN (case when DATEDIFF(@ed,@op) > 27 then '1ヶ月' else '1ヶ月未満' end  )
WHEN TIMESTAMPDIFF(MONTH,@op,@ed) >= 1 
    THEN concat(TIMESTAMPDIFF(MONTH,@op,@ed) + 1 , 'ヶ月') 
ELSE '不正な日数を検出' end ) as  '期間'

テストのために、変数で定義してありますが、
op には 開始日 en には 終了日を入れると該当の期間を取得できまする。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1