mysql:7388
From: "Haruki Nakayama" <"Haruki Nakayama" <haruki@xxxxxxxxxx>>
Date: Sun, 30 Mar 2003 23:47:39 +0900
Subject: [mysql 07388] Re: 日付の計算
いつもお世話になってます。 中山です。 > tableA > id startdate enddate > 1 2003-03-02 2003-03-15 > 2 2003-03-05 0000-00-00 > 3 2003-03-017 2003-03-28 憶測ですが、表示の形式からstartdateとenddateの型はdate型でしょう。 > enddateとstartdateの差を計算させたいのですが、 > 中にはenddateのデータがないレコードもあり、 > その場合は、今日の日付をenddateとして計算させたいのですが、 日数の差分であれば両フィールドをTO_DAYS関数で0年からの日数にして差を取られて はいかがでしょう? SQLはこんな感じになると思います。 実行してませんけど…(^^; SELECT `id`, `startdate`, `enddate`, TO_DAYS(enddate) - TO_DAYS(startdate) AS `diff` FROM `tableA` これで以下のような結果になると思います。 > tableA > id startdate enddate diff > 1 2003-03-02 2003-03-15 13 > 2 2003-03-05 2003-03-31 26 > 3 2003-03-017 2003-03-28 11 ではでは。 _____________________________________________________ haruki@xxxxxxxxxx http://clef.s8.xrea.com/ NAKAYAMA Haruki _____________________________________________________
7387 2003-03-30 23:27 ["Hisashi Chinami" <c] 日付の計算 -> 7388 2003-03-30 23:47 ┗["Haruki Nakayama" <h] 7389 2003-03-30 23:58 ┗["Hisashi Chinami" <c] 7390 2003-03-31 00:32 ┣[Nakase Hiroaki <h_na] 7391 2003-03-31 00:30 ┗["Haruki Nakayama" <h] 7392 2003-03-31 00:57 ┗["Hisashi Chinami" <c]