Maison > cadre php > Laravel > champs spécifiques à la requête Laravel

champs spécifiques à la requête Laravel

王林
Libérer: 2023-05-26 13:07:38
original
1749 Les gens l'ont consulté

Lorsque nous effectuons des requêtes sur la base de données Laravel, nous devons généralement spécifier des champs spécifiques à récupérer. Laravel propose plusieurs manières différentes d'atteindre cet objectif. Voici une introduction détaillée à ces méthodes :

  1. Utilisation de la méthode select()

La méthode select() de Laravel est le moyen le plus basique de récupérer un champ spécifique. Nous pouvons spécifier les champs à retourner via cette méthode. Par exemple, voici un exemple d'interrogation des champs nom et email dans la table utilisateurs :

$users = DB::table('users')
             ->select('name', 'email')
             ->get();
Copier après la connexion

À partir de l'instruction ci-dessus, nous pouvons voir qu'il suffit de transmettre les champs à récupérer dans la méthode select(). Cela renvoie un tableau contenant les valeurs des champs nom et e-mail.

  1. Utilisez la méthode addSelect()

Dans certains cas, nous devrons peut-être ajouter des champs à renvoyer dans les opérations de requête existantes. À ce stade, vous pouvez utiliser la méthode addSelect(). Par exemple, voici un exemple d'interrogation de tous les champs de la table des utilisateurs et d'ajout d'un champ country :

$users = DB::table('users')
             ->addSelect('country')
             ->get();
Copier après la connexion

À partir de l'instruction ci-dessus, nous pouvons voir qu'il nous suffit de transmettre le champ à ajouter dans la méthode addSelect() . Cela renvoie un tableau contenant toutes les valeurs de champ et la valeur du champ du pays.

  1. Utiliser la méthode pluck()

Si nous avons seulement besoin de récupérer la valeur d'un champ spécifique, nous pouvons utiliser la méthode pluck(). Par exemple, voici un exemple d'interrogation de la valeur du champ email dans la table users :

$email = DB::table('users')->where('name', 'John')->pluck('email');
Copier après la connexion

D'après l'instruction ci-dessus, nous pouvons voir qu'il suffit de transmettre le champ à récupérer dans la méthode pluck(). Cela renvoie la valeur du champ.

  1. Utilisez la méthode value()

Semblable à la méthode pluck(), la méthode value() récupère uniquement la valeur d'un champ spécifique. Cependant, contrairement à la méthode pluck(), elle renvoie une valeur unique plutôt qu'un tableau. Par exemple, voici un exemple d'interrogation de la valeur du champ email dans la table users :

$email = DB::table('users')->where('name', 'John')->value('email');
Copier après la connexion

D'après l'instruction ci-dessus, nous pouvons voir qu'il suffit de transmettre le champ à récupérer dans la méthode value(). Cela renvoie la valeur du champ.

  1. Utilisation des méthodes selectRaw() etwhereIn()

Il existe également une manière plus avancée de récupérer un champ spécifique. Si nous devons récupérer des données de plusieurs tables et filtrer les données en fonction de certaines conditions, nous pouvons utiliser la méthode selectRaw(). Par exemple, voici un exemple d'interrogation de champs spécifiques dans la table des commandes et la table des produits :

$orders = DB::table('orders')
                ->selectRaw('price * ? as total_price', [2])
                ->whereIn('id', [1, 2, 3])
                ->get();
Copier après la connexion

À partir de l'instruction ci-dessus, nous pouvons voir que nous avons écrit une requête SQL brute dans la méthode selectRaw() pour calculer le prix total. Nous utilisons également la méthodewhereIn() pour spécifier l'identifiant des commandes à récupérer, et la méthode get() pour obtenir les résultats de la requête.

Résumé

Lorsque vous effectuez des requêtes de base de données dans Laravel, il est très courant de devoir spécifier des champs spécifiques à récupérer. Nous pouvons utiliser des méthodes telles que select(), addSelect(), pluck(), value() et selectRaw() pour atteindre cet objectif. Ces méthodes offrent différentes flexibilités et capacités, nous permettant de choisir la méthode appropriée en fonction des besoins spécifiques des requêtes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal