Здесь у меня есть два похожих запроса, которые возвращают один и тот же результат, если я вставляю их непосредственно в SMSS:
Но при использовании Laravel ' Построитель запросов Я получаю разные результаты:
//select count(*) from [tbl_rfaccount] where CONVERT(varchar, id) = 'test'
$count = DB::connection('sqlsrv_rf_user')->table('tbl_rfaccount')
->whereRaw("CONVERT(varchar, id) = ?", $request->input('username'))
->count();
//$count = 1
//select count(*) from [tbl_rfaccount] where id = CONVERT(binary(13), 'test')
$count = DB::connection('sqlsrv_rf_user')->table('tbl_rfaccount')
->whereRaw("id = CONVERT(binary(13), ?)", $request->input('username'))
->count();
//$count = 0
Почему это так? Я использую Laravel Телескоп, и запросы выглядят точно так же, как те, которые я запускал в SSMS.
Вот как выглядит таблица: