Maison >base de données >tutoriel mysql >Comment pouvons-nous ignorer les valeurs négatives renvoyées par la fonction MySQL DATEDIFF() ?
Comme nous le savons tous, la fonction DATEDIFF() est utilisée pour obtenir la différence en jours entre deux dates. Par conséquent, il est également probable qu’il renvoie des valeurs négatives.
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)
La requête ci-dessus renverra les valeurs du tableau "différent". Maintenant, si l'on veut obtenir la différence entre OrderDate et workingDate, alors la sortie sera négative comme indiqué ci-dessous -
mysql> Select DATEDIFF(OrderDate, WorkingDate)AS 'DIFFERENCE IN DAYS' from differ; +--------------------+ | DIFFERENCE IN DAYS | +--------------------+ | -7 | | -5 | | -36 | +--------------------+ 3 rows in set (0.00 sec)
Mais nous pouvons ignorer ces valeurs négatives en utilisant la fonction MySQL ABS() comme suit -
mysql> Select ABS(DATEDIFF(OrderDate, WorkingDate))AS 'DIFFERENCE IN DAYS' from differ; +--------------------+ | DIFFERENCE IN DAYS | +--------------------+ | 7 | | 5 | | 36 | +--------------------+ 3 rows in set (0.00 sec)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!