尝试在 laravel 中的表或关系中搜索
Posted
技术标签:
【中文标题】尝试在 laravel 中的表或关系中搜索【英文标题】:trying to search in a table or in its relation in laravel 【发布时间】:2021-12-15 12:17:47 【问题描述】:我需要在预约表中搜索代码或作为预约关系的患者姓名。这是我到目前为止达到的代码,但它不起作用:
$lab = Lab::with(['patient' => function ($q) use ($search_query)
$q->select('id', 'avatar', DB::raw('CONCAT(first_Name, " ", second_Name) AS name')
->where('name', 'like', "%$search_query%")
->orWhereRaw("concat(first_name, ' ', second_name) like '%$search_query%' ")
);
])
->select('id', 'code')
->Where('code', 'like', "%$search_query%")
->limit(5)
->get();
【问题讨论】:
约会表中没有选择 【参考方案1】:加载关系不同于在其上应用“where”,您应该加载关系并在另一个语句中应用“whereHas”:
$lab = Lab::with(['patient' => function ($q)
$q->select('id', 'avatar', DB::raw('CONCAT(first_Name, " ", second_Name) AS name')
);
])
->select('id', 'code')
->Where('code', 'like', "%$search_query%")
->orWhereHas('patient',function ($query) use ($search_query)
$query->where('name', 'like', "%$search_query%");
)
->limit(5)
->get();
【讨论】:
以上是关于尝试在 laravel 中的表或关系中搜索的主要内容,如果未能解决你的问题,请参考以下文章
Laravel - 搜索关系,包括 whereHas 中的 null
java.sql.SQLSyntaxErrorException:ORA-00942:netbeans 8.0.1 中的表或视图不存在错误消息