Se connecter / S'enregistrer
Votre question

pb Requete SQL avec un WHERE = *

Tags :
  • Sql
  • Programmation
Dernière réponse : dans Programmation
4 Août 2007 21:16:13

Bonjour
Voilà, j'ai besoin de faire une requête dans laquelle je fais passer une variable. Tout se passe très bien, je peux faire mes tris correctement. Seulement, lorsque dans certains cas je dois tout afficher, ma valeur vaut "*". Je l'ai initalisé ainsi en espérant que ça passe, hélas non.
Lorsque j'affiche ma requête ça me met bien :
SELECT * FROM membres WHERE pays = "*"
Quand j'y pense c'est un peu normal, aucun champs ne s'appelle *.
Comment faire alors pour tout afficher avec ce where?
Merci!!

Voici un extrait du code :
  1. $pays = '*';
  2.  
  3. ...
  4.  
  5. $reqMembres = "SELECT * FROM membres
  6. WHERE pays = \"$pays\"";

Autres pages sur : requete sql where

4 Août 2007 22:30:43

tu retire le where, car si tu veux tout affiché, il n'y a donc aucune clause where (selection) definie. logique non?

montre ton code actuel.

tu peut rajouté une condition "if" et faire une chose du genre :

si $pays n'est pas vide, faire la requete avec "where", si $pays est vide, afficher tout via : select * from membres
4 Août 2007 22:36:48

Ah ok, effectivement c'est un peu bête de faire un where vide. Je croyais que l'étoile allait tout me sortir mais en fait pas du tout. Merci du tuyau Okinou, je vais mettre un petit if qui règlera le problème. A+
Contenus similaires
4 Août 2007 22:43:49

l'étoile est valable pour les champs de la table pour tout selectionner sans nominer les champs, ce que je déconseille de faire car en les nominant, tu sais ce que tu sorts comme info, et l'accès de lecture sera plus rapide, car en selectionnant tout, tu selectionne aussi des champs inutile, ce qui ralenti la requete (non visible à l'oeil nu bien sur), et c'es toujours pareil, si tu as 5 visiteurs, te casse pas la tete, mais en fort trafic, optimise au maximum et demande aux pro/

l'étoile ne fonctionne pas sur des clauses where.

phpdebutant.org > à droite.
5 Août 2007 22:19:52

Ok merci pour ces infos, j'ai mis un IF et ça roule. A+
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS