Partage
  • Partager sur Facebook
  • Partager sur Twitter

Requete SQL syntaxe IN

syntaxe IN

Sujet résolu
    21 novembre 2010 à 19:49:05

    Bonsoir,

    Il y a un point que je ne saisie pas trop bien c'est au niveau de la syntaxe IN


    Je vous montre en exemple:

    je veux sélectionner tous les enregistrements des magasins de Los Angeles et de San Diego dans la Table Store_Information


    ->
    SELECT *FROM Store_Information 
    WHERE store_name IN ('Los Angeles', 'San Diego');
    

    Mais je peux aussi bien faire ceci:

    ->
    SELECT * FROM Store_Information WHERE store_name="Los Angeles" AND store_name="San Diego";
    

    Non ?


    Merci :)

    • Partager sur Facebook
    • Partager sur Twitter
      21 novembre 2010 à 20:14:55

      Ta seconde requete ne retournera aucun resultat, en effet il est dificile d'etre a deux endroits en meme temps.
      La traduction du "IN" c'est en effet une serie de "OR" et non de "AND"
      • Partager sur Facebook
      • Partager sur Twitter
        21 novembre 2010 à 21:51:08

        Alors comment puis-je utiliser plusieurs restriction sans utiliser le IN ?
        • Partager sur Facebook
        • Partager sur Twitter
          21 novembre 2010 à 22:04:30

          Je sais pas trop ce que tu veux, mais tu peux utiliser :
          IN NOT('toto', 'titi')
          

          par exemple.

          En tout cas si tu utilise deux clause WHERE différente sur un même attribut, il semble difficile que ta requête retourne quelque chose. un champ peut pas avoir deux valeurs différentes !
          • Partager sur Facebook
          • Partager sur Twitter
            21 novembre 2010 à 22:04:30

            Le message qui suit est une réponse automatique activée par un modérateur.
            Les réponses automatiques permettent d'éviter aux modérateurs d'avoir à répéter de nombreuses fois la même chose, et donc de leur faire gagner beaucoup de temps.
            Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter le modérateur en question par MP.


            Veuillez modifier le titre du sujet


            Bonjour,

            Ce sujet a un titre qui ne décrit pas correctement le sujet, ou il est écrit en majuscules.

            La présentation de votre message étant néanmoins correcte, nous ne fermons pas le sujet, mais vous êtes invité(e) à modifier son titre en éditant votre premier message.

            Cette modification doit être faite dans les plus brefs délais, sans quoi nous serons dans l’obligation de clore le sujet .


            Voici quelques correspondances pour vous aider à choisir au mieux votre titre :




            Comment fait-on pour éditer un titre ?

            Si vous êtes l'auteur du topic, vous pourrez uniquement le changer en éditant le premier post du topic à l'aide de l'icône Image utilisateur.



            Merci de votre compréhension :)
            Les modérateurs.
            • Partager sur Facebook
            • Partager sur Twitter
              21 novembre 2010 à 22:09:18

              Escusez moi, mais il s'agit bien de requetes SQL ayant pour sous titre syntaxe IN.

              Quel est le motif de cet modification de titre ?
              • Partager sur Facebook
              • Partager sur Twitter
                21 novembre 2010 à 22:12:58

                Le titre est "Requete SQL", le sous-titre n'y change rien. "Requete SQL" ne veut rien dire en particulier, c'est beaucoup trop large. Un titre plus correct serait, par exemple, "Comment fonctionne IN" ou un truc du genre.

                Il ne faut pas utiliser le sous-titre comme titre principal, mais comme un complément au titre. Quelqu'un qui lit le sujet "Requete SQL" ne sait pas du tout à quoi s'attendre.
                • Partager sur Facebook
                • Partager sur Twitter
                  21 novembre 2010 à 22:15:56

                  a d'accord, bha vous en avez alors du travail sur le forum ...
                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 novembre 2010 à 22:17:46

                    Oui, c'est pourquoi les membres peuvent reporter les sujets incorrects (ça inclue un titre incorrect, mais pas seulement ça) pour aider les modérateurs.

                    Enfin, trêve de hors sujet, je te demande simplement de modifier ton titre pour ainsi faciliter les recherches et l'apport plus facile d'une éventuelle aide.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      21 novembre 2010 à 22:21:19

                      Pour revenir sur mon sujet de discussion en faite je cherche comment peut on faire une type de requete comme celle ci :

                      select * from client where nom="julia" AND age="17" AND ville="Paris";
                      



                      Voila mais le résultat retourné est NULL.

                      Merci :)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        21 novembre 2010 à 22:33:38

                        Faut mettre des simple cote, et pas double cote pour commencer

                        et ensuite tu n'as peut etre aucun client qui s'apelle julia, a 17 ans, et habite a paris.
                        Attention a la casse !
                        • Partager sur Facebook
                        • Partager sur Twitter
                          21 novembre 2010 à 22:50:29

                          aaaaa oui j'ai compris je suis bete on ne peut pas chercher deux champs identiques par exemple à la fois nom="paris" et nom="marseille"

                          Par contre pourquoi mettre une seul cote ?
                          Quelle est la différence ?

                          Merci
                          • Partager sur Facebook
                          • Partager sur Twitter
                            21 novembre 2010 à 23:25:15

                            ben c'est la norme sql c'est tout.
                            Cette norme est défini par des représentants de différentes entreprise (comme sun par exemple). Il définisse régulièrement ce que doit être la normalisation sql, ils se mettent d'accord puis rentre chez eux pour modifier en conséquence leur sgbd.

                            Mais bon en rentrant chez eux generalement, ils normalisent un peu comme ils veulent quand même, et c'est ainsi qu'on se retrouve avec des disparité d'interprétation du langage sql.

                            Il faut donc faire la différence entre la norme sql, et l'interprétation qu'en font les sgbd.

                            les simple cote font partie la norme generale
                            • Partager sur Facebook
                            • Partager sur Twitter
                              22 novembre 2010 à 23:34:01

                              MySQL accepte les " comme quotes, je ne sais pas pourquoi.

                              L'équivalent du IN serait :

                              SELECT * FROM Store_Information WHERE store_name='Los Angeles' OR store_name='San Diego';
                              • Partager sur Facebook
                              • Partager sur Twitter

                              Requete SQL syntaxe IN

                              × 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