Incorporation de sous-requêtes dans les requêtes Laravel : une sous-requête WHERE IN Exemple
Lorsque vous traitez des requêtes de base de données complexes, les sous-requêtes offrent un moyen puissant de récupérer des données à partir de plusieurs tableaux ou filtrer les résultats en fonction de calculs. Laravel, un framework PHP populaire, fournit une interface facile à utiliser pour travailler avec des sous-requêtes.
Problème :
Vous devez créer une requête dans Laravel qui extrait données de la table "products" à l'aide d'une sous-requête pour filtrer en fonction des valeurs de la table "product_category". Plus précisément, vous souhaitez inclure des lignes qui satisfont aux critères suivants :
Solution :
Pour y parvenir, Laravel fournit un moyen flexible d'incorporer des sous-requêtes dans vos requêtes à l'aide de fermetures :
Products::whereIn('id', function($query){ $query->select('product_id') ->from(with(new ProductCategory)->getTable()) ->whereIn('category_id', ['223', '15']) ->where('active', 1); }) ->get();
Définition de sous-requête (en Closure):
Requête principale :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!