À l'aide de plusieurs clauses where avec laravel générateur de requêtes
Je vais avoir beaucoup de mal à convertir la requête SQL suivante pour travailler avec laravels générateur de requêtes.
SELECT * FROM gifts
JOIN giftcategory ON gifts.id = giftcategory.giftid
JOIN giftoccasions ON gifts.id = giftoccasions.giftid
JOIN giftrelationship ON gifts.id = giftrelationship.giftid
WHERE (gifts.gender = 'any' OR gifts.gender = 'male')
AND giftoccasions.occasionid = '2'
AND (giftcategory.categoryid = '0' OR giftcategory.categoryid = '1')
AND giftrelationship.relationshipid = '1'
Cette requête fonctionne bien, mais je ne peux pas obtenir les mêmes résultats lors de l'utilisation de Laravels générateur de requêtes. J'ai le code suivant jusqu'à présent. Il ne fonctionne pas correctement. Im pensant que le problème pourrait être lié à la orWhere partie parce qu'il semble être de retour des résultats qui ne correspondent à aucune des autres clauses where.
$giftQuery = DB::Table('gifts')
->Join('giftcategory', 'gifts.id', '=', 'giftcategory.giftid')
->Join('giftoccasions', 'gifts.id', '=', 'giftoccasions.giftid')
->where('gifts.gender', '=', "male")
->orwhere('gifts.gender', '=', "any")
->where('giftoccasions.occasionid', '=', "2")
->where('giftoccasions.relationshipid', '=', "1")
->Where('giftcategory.categoryid', '=', "0")
->orWhere('giftcategory.categoryid', '=', "1");
si vous êtes satisfait de ma réponse ci-dessous, vous pouvez l'accepter 🙂
OriginalL'auteur Dan Hastings | 2015-03-30
Vous devez vous connecter pour publier un commentaire.
Vous souhaitez utiliser avancé où avec le paramètre de regroupement:
OriginalL'auteur Limon Monte