0

Estoy haciendo una búsqueda desde un input search, pero me gustaría que la consulta con la palabra clave, tomara en cuenta varios campos como nombre apellido_paterno y apellido_materno para devolver los resultados, ya sea que la palabra que encuentre en el nombre, apellido_paterno o apellido paterno

usuarios::where('nombre','apellido_paterno','apellido_materno', "%$juan perez perez%")->get();

(algo asi)

Hasta el momento solo puedo buscar por un campo el nombre. espero puedan ayudarme, gracias!!!

1 respuesta 1

0

Puedes usar la cláusula orWhere() para que la búsqueda filtre a las 3 columnas:

usuarios::where('nombre', 'like', '%juan perez perez%')
        ->orWhere('apellido_paterno', 'like', '%juan perez perez%')
        ->orWhere('apellido_materno', 'like', '%juan perez perez%')
        ->get();

O si utilizas variables, puede quedar como esto:

usuarios::where('nombre', 'like', '%'.$value.'%')
        ->orWhere('apellido_paterno', "like", '%'.$value.'%')
        ->orWhere('apellido_materno', "like", '%'.$value.'%')
        ->get();
2
  • Muchas gracias por el aporte pero ya lo e utilizado, pero hay algo que no se que pasé que no me respeta esa sentencia. será posible de otra forma?
    – jessica
    Commented el 9 nov. 2022 a las 20:07
  • Claro, puedes ver esta respuesta o también esta otra respuesta, me guie de aquí y traté de acercarme más a tu solución. También hubieras mencionado los intentos que hiciste y los errores que ocurre, así podría haberte dado otras soluciones. Commented el 9 nov. 2022 a las 20:11

¿No es la respuesta que buscas? Examina otras preguntas con la etiqueta o formula tu propia pregunta.