sql - autodidacte - probleme avec les dates - SQL/NoSQL - Programmation
Marsh Posté le 10-06-2008 à 22:13:17
des mois complets écoulés j'en compte que 5 à priori (29 modulo 12)
après pour se former à ce qu'est vraiment SQL il vaudrait mieux s'amuser avec la base northwind par exemple, de vraies requêtes d'extraction de données plutôt que du calcul
Marsh Posté le 12-06-2008 à 11:49:58
Salut,
Et si tu fais comme ça :
DECLARE @DATE_DEB SMALLDATETIME
SET @DATE_DEB = '01/08/2006'
SELECT DATEDIFF(MONTH,@DATE_DEB,GETDATE()) % 12 AS 'ELAPSED_MONTH',
DATEDIFF(YEAR, @DATE_DEB, DATEADD(MONTH, - DATEDIFF(MONTH,@DATE_DEB,GETDATE()) % 12, GETDATE())) AS 'ELAPSED_YEAR'
ça te donne le nombre de mois exact, que tu retires à ta date d'arrivée pour ne garder que le nombre d'années exact.
Marsh Posté le 02-06-2008 à 17:23:44
Bonjour,
je decouvre actuellement le sql et je m'auto forme dirons-nous.
pour le moment tout avance bien, cependant je bloque sur un probleme qui somme toute, peu paraitre simple.
En effet, je cherche a trouver le nombre d'annee ainsi que les mois restant entre deux dates.
Concretement, le resultat que je cherche pour les date "01/01/06" et "02/06/08" c'est "2" (pour les annes) et "6" (pour les mois restant)
pour le moment j'ai fait ceci (qui bien entendu est faux, tout du moins pour les mois)
SELECT DATEDIFF(YEAR,'1/1/2006',GETDATE()) AS 'ELAPSED YEARS',
DATEDIFF(MONTH,'1/1/2006',GETDATE()) AS 'ELAPSED MONTHS'
evidemment avec cette formule, pour les mois, je trouve le compte de lensemble des mois depuis le 01/01/2006
merci d'avance si vous pouvez maider