Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 如何在查询中用字符串替换字段的空值_Laravel_Laravel 7 - Fatal编程技术网

Laravel 如何在查询中用字符串替换字段的空值

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"));

我有一个名为visions的表,在其中保存访问过的页面。它包含一个名为user_id的列,如果用户经过身份验证,我将保存他的id,否则我将其设置为null

我想在查询中用一个单词“visitor”替换所有user\u id null

基于此sql示例,我进行了以下查询:

 // ..............
 $builder->select('visits.*', DB::raw("ISNULL(str(user_id), Visitor) as name"));
但我得到了这个错误:

Illumb\Database\QueryException:SQLSTATE[42000]:语法错误或访问冲突:1582调用本机函数“ISNULL”时参数计数不正确(SQL:select count()作为聚合自(select
visions
),ISNULL(str(user\u id),Visitor)作为名称自
visions


经过很长一段时间后,它将是
IFNULL
,而不是
ISNULL
“经过很长一段时间”,我从第一天起就看到了你的答案,因为我没有忘记一年前帮助过我的人,所以我写了一封信来感谢你;)