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

Langage SQL Discussion :

Condition OR et WHERE


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 35
    Points : 21
    Points
    21
    Par défaut Condition OR et WHERE
    bonjour
    j'ai un soucis avec une requête SQL

    celle-ci fonctionne très bien, elle compte le nbr d'enregistrement de la table Tasawaq dont le champ lexq1 = la maladie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	//*****compte le nombre de mot total *****
    	$query = $db->getQuery(true)
    		    ->select('COUNT(*)')
    		    ->from($db->quoteName('#__tasawaq'))
    		    ->where($db->quoteName('lexq1').' = '.$db->quote('la maladie'));
    mais celle-ci ne fonctionne pas, elle doit aussi chercher dans un autre champ la même condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	//*****compte le nombre de mot total *****
    	$query = $db->getQuery(true)
    		    ->select('COUNT(*)')
    		    ->from($db->quoteName('#__tasawaq'))
    		    ->where(($db->quoteName('lexq1').' = '.$db->quote('la maladie')) or ($db->quoteName('lexq2').' = '.$db->quote('la maladie')));
    d'avance merci d'une aide je ne suis qu'un bricoleur

    LJ

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 219
    Points
    8 219
    Billets dans le blog
    17
    Par défaut
    Ce n'est pas un problème de SQL, mais d'utilisation de ton ORM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ->where(($db->quoteName('lexq1').' = '.$db->quote('la maladie')) or ($db->quoteName('lexq2').' = '.$db->quote('la maladie')));
    Ici ton or est un or PHP et non SQL, ça ne pourra pas fonctionner.

    C'est comme si tu faisais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ->where( ("lexq1= 'la maladie'") or ("'lexq2' = 'la maladie") )
    Ce qui va être évalué en :

    Il faut voir la doc de ton ORM, ou faire une vraie requête SQL.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

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

Discussions similaires

  1. Une condition dans le where
    Par logiciel_const dans le forum SQL
    Réponses: 2
    Dernier message: 31/01/2011, 18h47
  2. CONDITION dans un WHERE..NOT IN
    Par brasco06 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 08/09/2009, 08h53
  3. Spécifier des conditions sur les WHERE
    Par samoussa dans le forum Langage SQL
    Réponses: 1
    Dernier message: 17/06/2009, 17h23
  4. Comment écrire un SELECT avec 2 ou 3 conditions apres le WHERE ?
    Par pro.dotnet dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/02/2009, 22h01
  5. Condition dans un where ?
    Par devdev dans le forum Débuter
    Réponses: 7
    Dernier message: 28/08/2008, 12h05

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