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

时间:2019-09-21 10:40:44

标签: laravel laravel-6

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

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

我要连接用户名。

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

2 个答案:

答案 0 :(得分: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;

答案 1 :(得分:0)

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

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