首页 > 解决方案 > 在 Laravel 中以逗号分隔的列搜索数组值

问题描述

我有两个表(Assessments,Unit_Assigned)。在评估表中,我使用逗号分隔的格式存储多个单元分配的 ID,如下所示

id | title | assignedids
-------------------------
2  | NTitl | 15,25,6
-------------------------
3  | Ctitl | 25,6,38

Unit_Assigned Table 显示如下

id | staffid | unit_id | batchid
---------------------------------
15 | 10      |  25     |  31
---------------------------------
38 | 12      |  18     |  42
---------------------------------

我需要根据员工 ID 获取评估列表(在 Unit_Assigned 表中提供)

我使用以下查询获得了分配的 ID 列表

  $assignedunits=Unitassigning::Where('staffid',$staffid)->get()->pluck('id')->toArray();

尝试使用以下查询获取评估

$stringconverted=implode(",",$assignedunits); $completedAssessments=Assessments::whereRaw("find_in_set('$stringconverted',assignedids)")->get();

标签: phplaravellaravel-5

解决方案


推荐阅读