IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

pb d'identification d'heure


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 190
    Par défaut pb d'identification d'heure
    salut
    étant donner que les heures d'une journée sont comprises entre 1 heure (1)
    et 24 heures (00),le pb c'est comment identifieé une heure quelconque est avant minuit et aprés minuit

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    bah entre 12-24h c'est avant et entre 0-12 c'est après non ?

  3. #3
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    C'est faux : les heures sont comprises entre 00 et 23
    ça part de 00h00m00s (minuit) à 23h59m59s
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    To_char( trunc(sysdate), 'HH24:MI:SS') => 00:00:00
    To_Char( trunc(sysdate) - 1/24/60/60, 'HH24:MI:SS') => 23:59:59

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    si on veut pinailler on peut même parler de 23:59:59 999ms

  5. #5
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    Citation Envoyé par daliok Voir le message
    salut
    étant donner que les heures d'une journée sont comprises entre 1 heure (1)
    et 24 heures (00),le pb c'est comment identifieé une heure quelconque est avant minuit et aprés minuit
    Non sens !
    à n'importe quelle heure de la journée, on est à la fois avant minuit (0 heure) du jour suivant, et aprés minuit (0 heure) du jour courant !!
    Une fois de plus, merci de spécifier le besoin (ou d'être plus précis) !

  6. #6
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 190
    Par défaut
    désolé
    je vais étre plus précis,je suis entrain de developper un module pointage et j'ai plusieurs shifts qui ont une heure et minute entrée et ont une heure et minute sortie et dans mon raisonnement j'ai besoin de savoir dans le cas d'une sortie l'heure du pointage est avant ou bien aprés minuit pour déterminer à quelle date correspand la sortie
    j'éspére que j'été clair, merci d'avance

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Citation Envoyé par daliok Voir le message
    désolé
    je vais étre plus précis,je suis entrain de developper un module pointage et j'ai plusieurs shifts qui ont une heure et minute entrée et ont une heure et minute sortie et dans mon raisonnement j'ai besoin de savoir dans le cas d'une sortie l'heure du pointage est avant ou bien aprés minuit pour déterminer à quelle date correspand la sortie
    j'éspére que j'été clair, merci d'avance
    c'est impossible ton truc

    Comment faire l'arrivée et le départ sont à la même heure ??? Il te faut la date... en plus c'est bien foutu puisque Oracle n'a pas de type HEURE mais il a un type DATE

  8. #8
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    "Impossible n'est pas français"

    Je suppose qu'un shift fait moins de 24h, voire, moins de 12h.
    Il suffit de tester l'heure de sortie sur la date d'entrée et de vérifier si elle est < à la date d'entrée. Dans ce cas rajouter 1 jour.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    WITH dt AS (SELECT '08:15' AS he, '23:12' AS hs FROM dual
    	UNION ALL
    		SELECT '20:10' AS he, '03:12' AS hs FROM dual
    			)
    SELECT 
    	TO_DATE(TO_CHAR(TRUNC(SYSDATE), 'DD/MM/RRRR ') || he, 'DD/MM/RRRR HH24:MI') AS de,
    	CASE WHEN TO_DATE(TO_CHAR(TRUNC(SYSDATE), 'DD/MM/RRRR ') || hs, 'DD/MM/RRRR HH24:MI') 
    		< TO_DATE(TO_CHAR(TRUNC(SYSDATE), 'DD/MM/RRRR ') || he, 'DD/MM/RRRR HH24:MI')
    	THEN
    		TO_DATE(TO_CHAR(TRUNC(SYSDATE), 'DD/MM/RRRR ') || hs, 'DD/MM/RRRR HH24:MI') + 1 
    	ELSE
    		TO_DATE(TO_CHAR(TRUNC(SYSDATE), 'DD/MM/RRRR ') || hs, 'DD/MM/RRRR HH24:MI')
    	END AS ds	
    FROM dt
     
     
    DE			DS
    24/08/2007 08:15:00	24/08/2007 23:12:00
    24/08/2007 20:10:00	25/08/2007 03:12:00

  9. #9
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    et le jour où il y a un incident et que le shift prend plus de 24h tu es TRES mal

    supposer c'est bien, anticiper c'est mieux

  10. #10
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    En partant du principe que tu veux savoir si l'on est plus proche de 0 h ("aprés minuit") ou de 23:59 ("avant minuit")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    -- maintenant
    select decode(to_char(sysdate,'AM'),'AM','APRES','AVANT') from dual
    -- dans 12 heures
    select decode(to_char(sysdate+12/24,'AM'),'AM','APRES','AVANT') from dual

Discussions similaires

  1. [CR ?] Somme d'heure sous Crystal ?
    Par Peter PARKER dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 17/04/2003, 16h24
  2. identification lettre (pb accent)
    Par scorbo dans le forum C
    Réponses: 5
    Dernier message: 14/12/2002, 02h59
  3. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15
  4. [VB6] [Datareport] Heure d'impression ds pied de page
    Par oazar dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/10/2002, 10h11
  5. Réponses: 11
    Dernier message: 23/07/2002, 14h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo