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

MS SQL Server Discussion :

Requête SQL : récupérer le temps écoulé pour la sélection (timestamp)


Sujet :

MS SQL Server

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 16
    Points : 25
    Points
    25
    Par défaut Requête SQL : récupérer le temps écoulé pour la sélection (timestamp)
    Bonjour,

    Je poste ici après pas mal de recherche car j'ai un problème de requête SQLServer 2005.
    J'effectue une requête sur la table, bornée par un timestamp. C'est de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT champ1, champ2 FROM matable WHERE timestamp > 'montimestamp1' AND timestamp < 'montimestamp2'
    Je voudrais aussi, en plus d'obtenir toutes les valeurs (il y en a une par minute) connaître le temps, en minutes, qui s'est écoulé sur l'ensemble de la période sélectionnée. Je pourrais compter les enregistrements mais quand je disais "une par minute", ce n'est pas totalement vrai donc je ne peux pas prendre ça comme repère.

    Du coup, j'ai créé cette requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT
    TOP 1 DATEDIFF(
    mi,
    (SELECT TOP 1 Time_Stamp FROM DATA_Server1_#1 WHERE Time_Stamp > '10/01/2012 00:00:00' AND Time_Stamp < '10/02/2012 00:00:00'),
    (SELECT TOP 1 Time_Stamp FROM DATA_Server1_#1 WHERE Time_Stamp > '10/01/2012 00:00:00' AND Time_Stamp < '10/02/2012 00:00:00' ORDER BY Time_Stamp DESC) )
    FROM DATA_Server1_#1
    Elle me renvoie bien le nombre de minutes entre les deux intervalles donc tout va bien.
    SAUF ! Qu'en plus de ça il y a des coupures. C'est à dire que je dois enlever les périodes de temps ou l'un des champs est hors limites (par exemple, monChamp < 800). Et ça, je n'arrive pas à le faire à partir de ma requête actuelle. Je suis peut-être parti dans la mauvaise direction avec mon DATEDIFF...

    Quelqu'un aurait-il la solution ?

    Merci d'avance !

  2. #2
    Membre émérite

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Points : 2 856
    Points
    2 856
    Par défaut
    Utiliser le format YYYYMMDD hh:mm:ss

    Exemple :
    Remplacer vos '10/01/2012 00:00:00' par '20120110 00:00:00'

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 16
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    Merci pour la réponse j'en prends note.
    Auriez-vous une solution pour calculer une période en ôtant certaines plages de valeurs selon la valeur d'un champ ?

    Merci d'avance !

  4. #4
    Membre émérite

    Homme Profil pro
    Chargé de Développement et d'Analyse de données
    Inscrit en
    Mars 2010
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé de Développement et d'Analyse de données
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 278
    Points : 2 856
    Points
    2 856
    Par défaut
    Créer une table Periode avec colonne_plage_debut, colonne_plage_fin

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 16
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    Je ne peux malheureusement pas toucher à la base de données mais je pense que je vais revoir du côté du nombre de valeurs. Il y a "presque" une valeur par minute. Je pensais que ça me dérangerait mais la précision dont j'ai besoin ne nécessite pas un nombre exact (actuellement en général j'ai entre 1438 et 1440 valeurs par jour ce qui me convient).

    Merci encore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête SQL dans la table utilisée pour l'état
    Par phil_klb dans le forum IHM
    Réponses: 1
    Dernier message: 22/07/2009, 21h31
  2. Requête SQL : récupérer un top rattaché à une colonne ?
    Par SetaSensei dans le forum Langage SQL
    Réponses: 3
    Dernier message: 07/02/2008, 19h24
  3. Requête SQL : récupérer la valeur max
    Par Rodie dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 23/07/2006, 12h28
  4. Temps écoulé pour la modification d'un fichier
    Par pouet33 dans le forum Langage
    Réponses: 4
    Dernier message: 06/09/2005, 13h41
  5. [VB.NET] [SQL] Pb requête sql, récupérer des params. ?
    Par Pleymo dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/02/2005, 21h15

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