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

Langage SQL Discussion :

tri par ordre descroissant


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut tri par ordre descroissant
    j'écris une requete pour récupérer les heures / personnes et je veux que ces heures soient triées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    String heure = "";
    String reqH = "Select * from heureseffectuees order by heure desc";
    ResultSet resultatH = lienHeure1.executeQuery(reqH);
    while (resultatH.next())
    {
    	heure = resultatH.getString("heure");
    	out.println(heure+"<br>");
    }
    jusque là tout va bien mais lorsque j'ajoute des clauses where telles que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    String req = "select * from heureseffectuees where idHeure =" + idHeure +" and mois ="+ m +" and annee = "+ an +" and jour = "+ j +" and type = "+t+" order by heure desc";
     
    ResultSet rs = lienHeure2.executeQuery(req);
    while (rs.next())
    {
        int etat = rs.getInt("modif");
        String heure = rs.getString("heure");
        int iHeure = profil.total_minutes(heure);
     
        out.println(heure"<br>");
    }
    le résultat que j'obtiens n'est pas trié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    13:21:17
    07:30:01
    07:23:01
    07:35:01
    pourquoi???

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Il faudrait que tu tries aussi sur les minutes et secondes parce qu'avec le seul critère des heures le résultat que tu montres est trié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String req = "select * from heureseffectuees where idHeure =" + idHeure +" and mois ="+ m +" and annee = "+ an +" and jour = "+ j +" and type = "+t+" order by heure desc, minute desc, seconde desc";
    Remarque : j'ai supposé qu'il existait aussi des colonnes minute et seconde.

    PS : pour que tes messages soient plus lisibles merci de supprimer le code dans lequel tu encapsules ton SQL.

  3. #3
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Regarde les règles de ce forum : pas de langage de programmation ici, que du code SQL !

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    non, je n'ai qu'une seule colonne heures qui englobe les heures sous format hh:mm:ss, les colonnes minutes et secondes n'existent pas.
    C'est pour ça que je ne comprends pas pourquoi le tri ne se fait pas.

    d'ailleurs que je mets:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String req = "select * from heureseffectuees where idHeure =" + idHeure +" and mois ="+ m +" and annee = "+ an +" and jour = "+ j +" and type = "+t+" order by heure desc";
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String req = "select * from heureseffectuees where idHeure =" + idHeure +" and mois ="+ m +" and annee = "+ an +" and jour = "+ j +" and type = "+t+" order by heure asc";
    j'ai strictement la même chose qui s'affiche....

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Citation Envoyé par Médiat
    Regarde les règles de ce forum : pas de langage de programmation ici, que du code SQL !
    Comme le dit Médiat : sans ton SGBD, sa version, etc. on ne peut pas t'aider...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    désolée, j'utilise Mysql 1.4

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 61
    Points
    61
    Par défaut
    je crois que le tri par ordre croissant ou decroissant est impossible dans ce cas: en effet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    String reqPersHeure = "Select * from personneheureseffectuees where idPersonne =" + idPers;
    ResultSet rsPersHeure = lienHeure1.executeQuery(reqPersHeure);
    while(rsPersHeure.next())
    {
        int idHeure = rsPersHeure.getInt("idHeure");
        String req = "select * from heureseffectuees where (idHeure ="+idHeure+") and (mois ="+m+") and (annee = "+an+") and (jour = "+j+") and (type = "+t+") order by heure asc";
        ResultSet rs = lienHeure2.executeQuery(req);
        while (rs.next())
        {
                    .....
        }
    }
    l'idHeure que j'utilise pour ma seconde requete n'est pas triée.
    je me trompe???

  8. #8
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Ta colonne heure est-elle de type DATETIME ou un truc dans le genre ?

Discussions similaires

  1. Tri par ordre croissant
    Par KinF dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 13/12/2008, 20h19
  2. Tri par ordre alpha, sensibilité à la casse
    Par linou dans le forum Oracle
    Réponses: 2
    Dernier message: 30/09/2005, 14h45
  3. [JComboBox] tri par ordre alphabetique
    Par GETah dans le forum Composants
    Réponses: 3
    Dernier message: 22/04/2005, 14h10
  4. URGENt: recherche dans un tableau trié par ordre alphabetiqu
    Par JulPop dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/02/2005, 17h21
  5. Tri par ordre alphabétique
    Par orus8 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 17/04/2003, 19h27

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