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

Requêtes MySQL Discussion :

Requête un peu compliquée


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Requête un peu compliquée
    Bonjour à tous, voici un exemple de table et de ce qu'il faut en sortir :
    +----------------+
    | Heure | Variable |
    -----------------+
    | 00:00 | 0 |
    | 01:05 | 1 |
    | 01:09 | 1 |
    | 01:45 | 1 |
    | 02:24 | 0 |
    | 12:20 | 1 |
    | 12:40 | 0 |
    | 14:32 | 0 |
    | 18:20 | 1 |
    | 18:21 | 1 |
    | 20:40 | 0 |

    J'ai besoin d'obtenir les heurs où il y a eu un changement de la valeur de "variable".
    Après la (ou les) requete(s) je dois donc obtenir:
    00:00
    01:05
    02:24
    12:20
    12:40
    18:20
    20:40
    Je ne vois pas comment faire en très peu de requete. Une idée ?

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Que penses-tu de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT SUBSTRING(heure,1,2) AS Plage_Horaire,
    GROUP_CONCAT(heure) as heures, 
    COUNT(DISTINCT variable) as chgts
    FROM latable
    GROUP BY Plage_Horaire
    HAVING chgts > 1
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2009
    Messages : 15
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    Je tenterais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SET @R = -1; 
    SET @V = 0;
    SELECT HEURE, VARIABLE FROM (
    SELECT @R AS R1, @V := @R, @R := VARIABLE AS R2, HEURE, VARIABLE FROM MYTABLE  
    ORDER BY HEURE)T
    WHERE T.R1 <> T.R2;

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Aucune des 2 methode ne donne de résultat

  5. #5
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    On peut voir un SHOW CREATE TABLE de la table ?
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Maljuna, ta methode ne marche que si le changement de "variable" se fait exactement a la meme heure, tu voit comment résoudre ca ?

    PS : j'ai ismplifié l'exemple comparé à ma table

Discussions similaires

  1. Requête SQL de recherche un peu compliquée
    Par ned-flanders dans le forum Langage SQL
    Réponses: 5
    Dernier message: 08/04/2013, 14h25
  2. Requête un peu compliquée
    Par molo1987 dans le forum SQL
    Réponses: 17
    Dernier message: 06/01/2013, 09h33
  3. [PHP 5.2] Résultat d'une requête dans un tableau un peu compliqué
    Par renaud26 dans le forum Langage
    Réponses: 7
    Dernier message: 31/03/2011, 06h28
  4. [SQL - ORACLE] Requete un peu compliquée (pour moi)
    Par Worldofdada dans le forum Langage SQL
    Réponses: 15
    Dernier message: 03/11/2005, 08h25
  5. Requête un peu trop compliqué pour moi
    Par Kokito dans le forum Langage SQL
    Réponses: 5
    Dernier message: 18/04/2005, 15h17

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