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 super compliquée


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Par défaut Requête super compliquée
    Bonjour à tous,

    Je viens vers vous en espérant que vous pourrez m'aider

    J'ai une base de données avec de nombreuses valeurs (plus de 100 000 oO).
    Avec une date et une valeur attitrée. Lorsque je fais mon select entre deux date, il me retourne plus de 5000 valeurs, et mon application ne le permet pas :S

    C'est pourquoi j'aimerais pouvoir récupérer par exemple 2000 valeurs, avec la première valeur correspondant à ma première date, et ma dernière valeur correspondant à ma dernière date. Entre ces deux dates, il faudrait 1998 valeurs toutes séparées avec le même interval.

    Ma table est trié par date.

    Merci d'avance pour vos nombreuses réponses.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Quelle est votre version de SQL-Server ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Par défaut
    J'ai la version express 2008.

    Merci

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Une piste de recherche :
    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
    With Datas (Valeur, MaDate, Grp) as
    (
    select Valeur, MaDate
         , NTILE(2000) over (order by MaDate asc)
      from MaTable
     where MaDate between <Dt1> and <Dt2>
    )
      ,  SR (Valeur, MaDate, Rn) as
    (
    select Valeur, MaDate
         , ROW_NUMBER() over(PARTITION by Grp order by N asc)
      from Datas
    )
    select Valeur, MaDate
      from SR
     where Rn = 1

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Par défaut
    Merci pour cette réponse rapide, j'essaie ça dans la journée, et je vous tiens au courant de mon avancé.

    Merci encore.

  6. #6
    Membre expérimenté
    Inscrit en
    Janvier 2012
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Janvier 2012
    Messages : 145
    Par défaut
    Je ne sais pas à quoi ressemble l'application, mais ne serait il pas plus intéressant de présenter à l'utilisateur des pages de 1000 (ou 2000) résultats? On pourrait aussi y ajouter la date min et la date max. J'avoue avoir du mal à comprendre (mais veux bien être éclairé ) l'idée de séparer les dates par un intervalle pas très régulier...

  7. #7
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Bonjour je suis un ami de pedrolito.
    J'aimerais comprendre votre requete mais je ne la comprends pas. Je m'explique: nous avons une table avec une colonne date nommée date_valeurs et d'autres colonnes nommées respectivement A1, A2, A3.. et contenant des valeurs
    Ce que nous aimerions faire c'est donc prendre par exemple 2000 valeurs de A1 entre une date 1 et une date2. L'ensemble des dates doivent être séparées par un intervalles plus ou moins egales.
    J'ai donc essayé votre requetes comme cela (il se peut que j'ai mal fait la requete car je ne la comprends pas trops):

    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
    WITH Datas (A1, date_valeurs, Grp) AS
    (
    SELECT date_valeurs, A1
    , NTILE(2000) over (ORDER BY date_valeurs ASC)
    FROM valeursMesurees
    WHERE date_valeurs BETWEEN '2012-01-11 18:49:10.000' AND '2012-01-11 18:53:50.000'
    )
    , SR (A1, date_valeurs, Rn) AS
    (
    SELECT A1, date_valeurs
    , ROW_NUMBER() over(PARTITION BY Grp ORDER BY date_valeurs ASC)
    FROM Datas
    )
    SELECT A1, date_valeurs
    FROM SR
    WHERE Rn = 1
    Merci pour votre future reponse

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

Discussions similaires

  1. requête mysql compliquée portant sur l'année
    Par gosu14 dans le forum Requêtes
    Réponses: 8
    Dernier message: 03/07/2008, 17h18
  2. requête sql compliquée
    Par root76 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 20/08/2007, 15h53
  3. [Débutant] Requête assez compliquée
    Par pc.bertineau dans le forum Langage SQL
    Réponses: 6
    Dernier message: 25/06/2007, 11h46
  4. requête sql compliquée
    Par caoutchouc dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/05/2007, 16h21
  5. Une requête bien compliquée pour moi
    Par bellande dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 01/02/2007, 21h51

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