Supposons que j'ai cette requête:
20198120
3 Réponses :
Les dates de soustraction de MySQL ne font pas ce que vous attendez. Cela transforme effectivement les dates en entiers et les aborde. Donc, typiquement datte Une méthode pour calculer un âge est d'utiliser Fonction de date 2020-01-22 code> devient entier 20200122 code>. Ce n'est pas ce que vous voulez. Timestampdiff () Code> , comme: P> timestampdiff(year, dob, curdate())
in SQLServer Vous pouvez écrire datrodiff (année, getDate (), '2002/08/11') code>. p>
Une autre façon de le faire est la suivante:
select CONCAT(YEAR(CURDATE()) - YEAR(DOB) -1
, '.'
, ABS(MONTH(CURDATE()) - MONTH(DOB)+1)) as age
FROM customerDetails
WHERE customerid = (SELECT max(customerid)
FROM customerDetails)
Cela ne tient pas compte de la date et du mois, il se comporte donc comme tout le monde est né le 1er janvier.
Merci @gmb, changé la solution à celle qui pourrait être d'une aide d'une aide ...
Je vais marquer aussi correct lorsque vous me montrerez à inclure le lieu de la clientèle = Sélectionnez Max (CustomerID) de CompagnonDétails
@grimreauperz, j'ai mis à jour ma réponse. N'oubliez pas que vous pouvez maintenant également uppoter parce que vous avez plus de 15 points. S'il vous plaît laissez-moi savoir si quelque chose ne fonctionne pas ...
Vous voulez cette solution dans MySQL?
Vérifiez cette réponse.
https://stackoverflow.com/questions/10506731/get-Différence - années-ye-entre-deux-Dates-in-mysql-as-A N-Integer Code>Cette réponse traite du sujet de manière approfondie: Stackoverflow.com/Questtions/48756627/...