php - 在 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();
解决方案
推荐阅读
- java - 在 Java 中将 JSON 字符串转换为文件
- xml - Mulesoft XML dataweave 为属性设置命名空间
- android - 无法将片段添加到片段管理器
- sql - 在 SQL 更新语句的 WHEN 部分中有多个参数
- sql - 在单个表中使用 XMLAGG 的假脱机空间问题
- string - XSLT 从字符串中删除中间部分
- sql - 使用 SQL 替代 STRING_AGG
- android - 连接到离线 Wi-Fi 并继续使用移动数据(也适用于所有其他应用程序)
- python - Python HTML 将文本提取到列表中
- java - 从天真的java中的ecdsa privatekey获取ecdsa公钥