<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
class UserController extends Controller
{
/**
* Show a list of all of the application's users.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$users = DB::select('select * from users where active = ?', [1]);
return view('user.index', ['users' => $users]);
}
}Explicación de la consulta SQL cruda
- DB::select('select * from users where active = ?', [1]);:
- DB::select(): Es un método proporcionado por la facade DB de Laravel que permite ejecutar consultas SQL crudas y devuelve un array de resultados.
- 'select * from users where active = ?': Es la consulta SQL cruda que se está ejecutando. En este caso, selecciona todos los campos (*) de la tabla users donde la columna active es igual a 1.
- [1]: Es un array que contiene los valores que se van a insertar en las posiciones de los placeholders (?) en la consulta SQL. En este ejemplo, el ? en la consulta se reemplaza con 1, lo que significa que estamos buscando usuarios que están activos (active = 1).
Tipo de consulta
Este tipo de consulta se llama consulta SQL cruda. En lugar de usar Eloquent o el Query Builder de Laravel, estás escribiendo directamente una consulta SQL y ejecutándola contra la base de datos. Las consultas SQL crudas se utilizan cuando necesitas realizar consultas muy específicas que podrían ser más difíciles de construir con el Query Builder o cuando deseas aprovechar funcionalidades específicas de SQL.