->where([
'er.id_user_request_to' => $nIdUser
])
->where(DB::raw('case WHEN ge.id_user IS NOT NULL THEN ge.id_user = '.$nIdUser.' ELSE 0 END'))
试图使用以下代码打印查询
$qry = vsprintf(str_replace(array('%', '?'), array('%%', '"%s"'), $oEvents->toSql()), $oEvents->getBindings());
dd($qry);
这将打印一个查询,如
WHERE
(
`er`.`id_user_request_to` = "6")
AND(
CASE WHEN ge.id_user IS NOT NULL THEN ge.id_user = 6 ELSE 0 END
)
) **IS NULL**
无法从查询末尾添加 IS NULL 的地方获取
答案 0 :(得分:4)
用whereRaw替换您的DB :: raw
->where([
'er.id_user_request_to' => $nIdUser
])
->whereRaw(('case WHEN ge.id_user IS NOT NULL THEN ge.id_user = '.$nIdUser.' ELSE 0 END'))
希望对您有帮助