ご存知のとおり、DATEDIFF() 関数は 2 つの日付の差の日数を取得するために使用されます。したがって、負の値を返す可能性もあります。
mysql> select * from differ; +------------+-------------+ | OrderDate | WorkingDate | +------------+-------------+ | 2017-10-22 | 2017-10-29 | | 2017-10-25 | 2017-10-30 | | 2017-10-25 | 2017-11-30 | +------------+-------------+ 3 rows in set (0.00 sec)
上記のクエリは、テーブル "differ" の値を返します。ここで、OrderDate と workingDate の差を取得したい場合、出力は以下に示すように負になります -
mysql> Select DATEDIFF(OrderDate, WorkingDate)AS 'DIFFERENCE IN DAYS' from differ; +--------------------+ | DIFFERENCE IN DAYS | +--------------------+ | -7 | | -5 | | -36 | +--------------------+ 3 rows in set (0.00 sec)
しかし、次のように MySQL ABS() 関数を使用してこれらの負の値を無視できます -
rreeee以上がMySQL DATEDIFF() 関数によって返される負の値を無視するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。