Bonjour
comment puis je svp en plsql trouver le nb de jours entre le sysdate et un champs date ?
merci
Bonjour
comment puis je svp en plsql trouver le nb de jours entre le sysdate et un champs date ?
merci
Bonjour,
Il suffit simplement de faire la différence entre les 2 dates:
exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select trunc(sysdate) - to_date('15/10/2022', 'DD/MM/YYYY') from dual; --> 18
merci vanagreg
trunc permet de tronquer de combien de caractères ?
que signifie dual svp ?
si je veux diviser par 30 le résultat je prends tte la requete et je fais (select ...from dual)/12 ?
si je veux la différence entre sysdate et un champs date pr avoir le nb de mois et savoir si ce nombre est > à 120 mois , comment je l'écris svp ?
La table DUAL c'est une table standard Oracle qui ne contient qu'une seule ligne. Elle est souvent utilisée pour afficher rapidement un résultat de calcul, ou pour matérialiser des lignes au sein de requêtes. Si tu utilises PL/SQL tu pourras faire les calculs directement dans ta requête ou dans le code.
Exemple:
trunc c'est pour ignorer la partie horaire de sysdate (tu considères minuit).
Code : Sélectionner tout - Visualiser dans une fenêtre à part v_nb_jours := trunc(sysdate) - v_date;
Si tu veux obtenir le nombre de mois, il existe la fonction MONTHS_BETWEEN pour ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 v_nb_mois := months_between(v_date, trunc(sysdate)); if v_nb_mois > 120 then ... end if; ...
impeccable merci !!bonne journée
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager