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 :

pb avec requete HQL


Sujet :

Hibernate Java

  1. #1
    Membre régulier Avatar de psycho_xn
    Inscrit en
    Mars 2007
    Messages
    250
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 250
    Points : 96
    Points
    96
    Par défaut pb avec requete HQL
    bonjour,
    j'essaie d'exécuter une requête du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Query query = session.createQuery("select n_plat, libelle_plat, count(*) from Commande group by n_plat ");
    sauf que tel que ça passe pas

    merci bcp

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    un peu plus de précision sur le problème? On peut pas deviner quelle erreur tu as!

  3. #3
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    n_plat et libelle_plat sont les noms en DB je suppose, mais dans ta classe Commande, ils ne se nommeraient pas plutôt nPlat et libellePlat par hasard ?

    Auquel cas, il faudrait remplacer par les noms dans la classe, pas les noms en DB

    A+

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 62
    Points : 75
    Points
    75
    Par défaut
    Comme le souligne OButterlin tu doit faire tes requêtes HQL en te basant sur les objet POJO (les classes qui représente ton modèle relationnelle) et non sur le nom des tables et champs de ton schema BDD.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 69
    Points : 76
    Points
    76
    Par défaut
    D'un point de vue SQL, tous les champs qui sont dans le select et ne sont pas des fonctions d'aggrégation doivent faire partie du GROUP BY.

    Donc il faut faire "group by n_plat, libelle_plat" (si ce sont les bons noms de classe bien entendu).

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par mickilous Voir le message
    D'un point de vue SQL, tous les champs qui sont dans le select et ne sont pas des fonctions d'aggrégation doivent faire partie du GROUP BY.
    Non, il en faut 1 au moins, mais pas forcément tous...

    Dans son cas (select n_plat, libelle_plat, count(*)), il récupère le nombre d'enregistrements par n_plat et le libellé du premier enregistrement trouvé pour chaque groupe... plus le nombre bien sûr...

    A+

Discussions similaires

  1. Pb avec requete HQL
    Par muslima dans le forum Hibernate
    Réponses: 4
    Dernier message: 25/04/2011, 01h11
  2. Réponses: 2
    Dernier message: 22/06/2008, 15h06
  3. Requete HQL avec "all"
    Par Befa21 dans le forum Hibernate
    Réponses: 5
    Dernier message: 23/04/2008, 17h15
  4. requete hql sur association one to many avec inner class
    Par austin P. dans le forum Hibernate
    Réponses: 1
    Dernier message: 07/06/2007, 11h56
  5. Requete HQL avec jointure
    Par chriscoolletoubibe dans le forum Hibernate
    Réponses: 50
    Dernier message: 24/04/2007, 15h54

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