如何在 Laravel 查询中使用 CONCAT 函数

How to use CONCAT function in Laravel Query

如何在 Laravel 查询中使用 CONCAT 函数?

$checkLogin = User::where(['Username' => $_POST['id'], 'Password' => $_POST['pass']])
    ->first();

我想连接用户名。

CONCAT(Username, '#', LPAD(NameID, 4, '0'))

您可以使用 DB::raw()CONCAT。您可以改用 Request

use Illuminate\Http\Request;

public function YourFunction(Request $data)
{
    $checkLogin = User::query()
        ->where(DB::raw("CONCAT(Username, '#', LPAD(NameID, 4, '0'))"), $data->id)
        ->where('Password', $data->pass)
        ->first();
}

确保将其放在顶部:use DB;

您正在寻找 whereRaw($condition, $bindings),它可以让您使用任何您想要的 SQL:

$checkLogin = User::query()
    ->whereRaw("CONCAT(Username, '#', LPAD(NameID, 4, '0')) = ?", [$_POST['id']])
    ->where('Password', $_POST['pass'])
    ->first();