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

Hibernate Java Discussion :

order by multiple


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 86
    Par défaut order by multiple
    Bonjour,

    Je n'ai pas trouvé dans quel forum je pouvais poster ma question, donc si un modo estime que mon message serait mieux ailleurs, qu'il n'hésite pas à le déplacer.

    Je cherche à faire la requête suivante avec des criteria/criterion hibernate mais le code que j'ai fait ne fonctionne pas. Le second order by écrase le premier au lieu de faire un second tri comme le fait la requête sql.

    Requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM `facturation`.`client_histo` order by emplid asc, dateEffet asc
    Code hibernate/java:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    final Criteria criteria = getSession().createCriteria(ClientHisto.class);
    criteria.addOrder(Order.asc(EMPLID));
    criteria.addOrder(Order.asc(DATE_EFFET));
    Je vous remercie d'avance pour votre aide.

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par jm49 Voir le message
    Code hibernate/java:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    final Criteria criteria = getSession().createCriteria(ClientHisto.class);
    criteria.addOrder(Order.asc(EMPLID));
    criteria.addOrder(Order.asc(DATE_EFFET));
    Je vous remercie d'avance pour votre aide.
    avez-vous essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    final Criteria criteria = getSession().createCriteria(ClientHisto.class).addOrder(Order.asc(EMPLID)).addOrder(Order.asc(DATE_EFFET));
    ?

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 86
    Par défaut
    Citation Envoyé par JeitEmgie Voir le message
    avez-vous essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    final Criteria criteria = getSession().createCriteria(ClientHisto.class).addOrder(Order.asc(EMPLID)).addOrder(Order.asc(DATE_EFFET));
    ?
    Ça ne marche pas mieux, en même temps je ne suis pas surpris car ce code ne fait que réduire en une ligne ce que j'ai fait en 3 .
    Pour le moment mes résultats sont donc tous triés selon la "date effet" au lieu d'être triés selon les deux critères

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par jm49 Voir le message
    Ça ne marche pas mieux, en même temps je ne suis pas surpris car ce code ne fait que réduire en une ligne ce que j'ai fait en 3 .
    Pour le moment mes résultats sont donc tous triés selon la "date effet" au lieu d'être triés selon les deux critères
    oui… d'une certaine façon…

    mais les fonctions qui peuvent être chaînées ne garantissent pas toujours que l'objet retourné soit l'objet appelé…

    or en faisant la "même" opération en 3 lignes vous perdez l'objet retourné…

    mais si les 2 versions ne fonctionnent pas - alors que tout laisse supposer qu'elles le devraient - le problème est ailleurs…

    DATE_EFFET a bien la valeur attendue ? pas de mélange nom attribut/nom colonne ?

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 86
    Par défaut
    Non pas de mélange, car lorsque je trie sur la date elles sont bien triées et quand je trie que sur l'emplid ils sont bien triés.

    Il y a t il un moyen de voir les requêtes qui sont jouées?

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 86
    Par défaut
    Bon je viens de faire des tests avec p6spy et les requêtes sont bien écrites. Et quand je suis retourné voir si les objets étaient bien ordonnés tout allait bien. Je ne sais pas du tout ce qui se passait car j'ai laissé le code du départ.

    Désolé pour le dérangement et merci d'avoir passé du temps pour moi.

    A+

    JM

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

Discussions similaires

  1. order by multiple sous php
    Par jcp66 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 10/02/2013, 12h09
  2. Requête ORDER BY Multiple Columns
    Par hgushgus dans le forum Requêtes
    Réponses: 10
    Dernier message: 15/12/2011, 10h29
  3. Probleme sur requête avec order by multiple
    Par dembroski dans le forum Requêtes
    Réponses: 25
    Dernier message: 28/01/2010, 15h47
  4. order by multiple
    Par bylka dans le forum Requêtes
    Réponses: 3
    Dernier message: 26/03/2009, 14h28
  5. Souci Order By multiple
    Par guitou12 dans le forum Oracle
    Réponses: 4
    Dernier message: 11/09/2006, 17h06

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