Partage
  • Partager sur Facebook
  • Partager sur Twitter

MAX Mysql et MSSQL

Sujet résolu
    19 décembre 2011 à 16:35:26

    Bonjour,
    J'ai une petite question,

    Avec un collègue on comprend pas une erreur bizarre..

    SELECT MAX(`CP_VILLE`), `NOM_VILLE` FROM `VILLES`
    


    Donc pas de pb avec mySQL,

    Par contre, erreur sur MSSQL 2008 :

    Msg 8120, Niveau 16, État 1, Ligne 1
    La colonne 'dbo.VILLES.NOM_VILLE' n'est pas valide dans la liste de sélection parce qu'elle n'est pas contenue dans une fonction d'agrégation ou dans la clause GROUP BY.


    On a ajouté GROUP BY dbo.VILLES etc... rien à faire :(


    Merci de votre aide
    • Partager sur Facebook
    • Partager sur Twitter
    Ne vous inscrivez surtout pas aux certifications. Pas crédibles, payantes, et aucun suivi en cas de bug.
      19 décembre 2011 à 18:16:41

      SELECT MAX(`CP_VILLE`), `NOM_VILLE` FROM `VILLES`
      


      Cette requête signifie (sous MySQL) : retourner
      - le max(cp_ville) pour la table entière
      - et la valeur de nom_ville pour une ligne prise au hasard

      Pour toute autre BDD un peu plus rigoureuse que MySQL, prendre une ligne au pif n'est pas réglementaire, tu as donc une erreur.
      • Partager sur Facebook
      • Partager sur Twitter
        19 décembre 2011 à 22:34:48

        djlixfe > il me semble avoir essayé, ça n'a pas fonctionné.

        Lord Casque Noir> "au pif" ?? je prends pas au pif; je veux la plus grande valeur en code postal et afficher le nom de la commune correspondant... j'ai à chaque fois la même réponse sur mysql
        • Partager sur Facebook
        • Partager sur Twitter
        Ne vous inscrivez surtout pas aux certifications. Pas crédibles, payantes, et aucun suivi en cas de bug.
          19 décembre 2011 à 22:46:12

          > je veux la plus grande valeur en code postal et afficher le nom de la commune correspondant...

          alors il faut ajouter une jointure, ou mettre une fonction de fenêtrage

          > j'ai à chaque fois la même réponse sur mysql

          C'est une coincidence...
          • Partager sur Facebook
          • Partager sur Twitter
            20 décembre 2011 à 1:48:50

            Il faut faire 2 requete c'est simple
            • Partager sur Facebook
            • Partager sur Twitter
              20 décembre 2011 à 7:58:05

              Comment sivouplay :$:$
              • Partager sur Facebook
              • Partager sur Twitter
              Ne vous inscrivez surtout pas aux certifications. Pas crédibles, payantes, et aucun suivi en cas de bug.
                20 décembre 2011 à 10:33:02

                MAX est une fonction d'AVG .
                Tu peut utiliser plusieurs fonction d' AVG genre SELECT MAX(id) AS Id_max, MIN(id) AS SuperPetit FROM Table

                Mais pas une fonction d'AVG avec une colone.
                Donc tu récupere le Maximum et u fais un where pas compliqué
                Sinon un Having ou une Sous requete (je suis pas doué pour me rappeler des noms)


                Comme ca


                SELECT *  FROM  `livre`  WHERE id = (  SELECT MAX( id )  FROM livre )

                On dit merci BOSS

                PS:Cela arrive que je ne finisse pas mon idée ou j'étais parti donc mes réponses s'avère très incomplète cela est dut que je suis occupé en ce moment donc il y'aura souvent un édit pour un petit plus sur la question
                • Partager sur Facebook
                • Partager sur Twitter
                  21 décembre 2011 à 9:28:41

                  merci :)
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Ne vous inscrivez surtout pas aux certifications. Pas crédibles, payantes, et aucun suivi en cas de bug.

                  MAX Mysql et MSSQL

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown