Laravel 如何在查询中用字符串替换字段的空值
我有一个名为visions的表,在其中保存访问过的页面。它包含一个名为user_id的列,如果用户经过身份验证,我将保存他的id,否则我将其设置为null 我想在查询中用一个单词“visitor”替换所有user\u id null 基于此sql示例,我进行了以下查询:Laravel 如何在查询中用字符串替换字段的空值,laravel,laravel-7,Laravel,Laravel 7,我有一个名为visions的表,在其中保存访问过的页面。它包含一个名为user_id的列,如果用户经过身份验证,我将保存他的id,否则我将其设置为null 我想在查询中用一个单词“visitor”替换所有user\u id null 基于此sql示例,我进行了以下查询: // .............. $builder->select('visits.*', DB::raw("ISNULL(str(user_id), Visitor) as name"));
// ..............
$builder->select('visits.*', DB::raw("ISNULL(str(user_id), Visitor) as name"));
但我得到了这个错误:
Illumb\Database\QueryException:SQLSTATE[42000]:语法错误或访问冲突:1582调用本机函数“ISNULL”时参数计数不正确(SQL:select count()作为聚合自(selectvisions
),ISNULL(str(user\u id),Visitor)作为名称自visions
经过很长一段时间后,它将是
IFNULL
,而不是ISNULL
“经过很长一段时间”,我从第一天起就看到了你的答案,因为我没有忘记一年前帮助过我的人,所以我写了一封信来感谢你;)