Maison > développement back-end > tutoriel php > Comment utiliser efficacement l'opérateur \'LIKE\' dans les requêtes éloquentes Laravel 5 ?

Comment utiliser efficacement l'opérateur \'LIKE\' dans les requêtes éloquentes Laravel 5 ?

Barbara Streisand
Libérer: 2024-10-25 11:05:02
original
332 Les gens l'ont consulté

How to Use the 'LIKE' Operator Effectively in Laravel 5 Eloquent Queries?

Éloquent : Comprendre l'équivalence « LIKE »

Lorsque vous travaillez avec Laravel 5, il est important de comprendre comment utiliser efficacement l'opérateur « LIKE » dans les requêtes éloquentes. Cet opérateur vous permet de rechercher des enregistrements en fonction de la correspondance partielle d'un champ particulier.

Exemple : Requête avec 'LIKE'

Considérez la requête suivante :

<code class="php">BookingDates::where('email', Input::get('email'))
->orWhere('name', 'like', Input::get('name'))
->get();</code>
Copier après la connexion

Cette requête vise à récupérer les enregistrements de la table 'booking_dates'. Il vérifie d'abord si le champ « email » correspond à la valeur donnée à l'aide de la clause « où ». Ensuite, il utilise la clause 'orWhere' pour vérifier si le champ 'name' correspond partiellement à la valeur donnée à l'aide de l'opérateur 'like'.

Cependant, dans votre cas, vous avez mentionné que 'orWhereLike' ne correspondait pas tous les résultats. Pour résoudre ce problème, vous pouvez :

  1. Utilisez dd(DB::getQueryLog()) pour inspecter les instructions SQL en cours d'exécution.
  2. Assurez-vous que le champ « nom » dans votre La base de données est définie comme un type de chaîne, car les recherches « j'aime » sont sensibles à la casse.
  3. Vérifiez si la valeur d'entrée pour « nom » est correctement formatée (par exemple, entourée de « % ») pour indiquer une correspondance partielle.

Requête modifiée :

Pour obtenir la requête souhaitée, vous pouvez modifier l'opérateur 'j'aime' comme suit :

<code class="php">BookingDates::where('email', Input::get('email'))
->orWhere('name', 'like', '%' . Input::get('name') . '%')
->get();</code>
Copier après la connexion

Cette modification enveloppe la valeur d'entrée dans « % », lui permettant de correspondre à la fois aux préfixes et aux suffixes dans le champ « nom ».

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!

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