php - 如何在 Laravel SQL 查询的 where 子句中使用对象
问题描述
假设我有一些对象数据doctor_id
{doctor_id: 1}
{doctor_id: 2}
现在我想找到doctor_id
从doctors
表中选择的名称。
doctors
表字段是id
, name
, address
....
我的查询是
$doctors_data = Doctor::whereIn('id', $doctor_id)->get();
但我从log
文件中得到错误
local.ERROR: SQLSTATE[HY000]: 一般错误: 2031 (SQL: select * from
doctors
whereid
in (?))
什么是查询。请帮忙
解决方案
whereIn
要求第二个参数是一个数组。
即在你的情况下,wherein
应该是这样的。
$doctorsData = Doctor::whereIn('id', [1,2])->get();
不知道你有什么样的对象$docter_id
,但你的问题的解决方案是,你需要将你的对象转换为一个 id 数组,然后再将它输入whereIn
.
希望你明白这个概念。如果仍然无法解决问题,您可以将您的doctor_id
对象分享给我们,以便我们帮助将其转换为数组。
推荐阅读
- python - 如何在使用 str 变量的另一行之后打印一行
- java - docker windows不使用分配内存
- react-bootstrap - 如何在反应引导程序中更改表单控件的默认值
- flutter - Flutter Null 不能分配给字符串
- asp.net-core - 从 Blazor 服务器调用 webapi 方法
- javascript - 我如何在数组 JS 中合并这个重复的对象
- python - Pylance:在这种情况下不允许使用“ClassVar”?
- swift - URLSession:如何检查请求发送了哪些 cookie?
- docker - Rootless Docker - 如何从主机访问 Docker 卷?
- javascript - React API 调用返回空响应然后返回数据