我想问:
我有两个表employee
,其中包含字段ID
,Fullname
,email
...和表task
,字段为name_task
,{ {1}} ...
使用字段list_employee
我保存了数据示例list_employee
,
现在我想要从字段|1509|1510|1511|
帮助我!
由于
答案 0 :(得分:1)
以下查询可能与您的想法有关:
SELECT t.*, e.*
FROM task t
INNER JOIN employee e
ON t.list_employee LIKE CONCAT('%|', e.ID, '|%')
-- WHERE t.name_task = 'some task'
这会将给定的任务记录及其管道分隔的员工列表与employee
表中的每个匹配记录进行匹配。请注意,正如上述所有评论所述,以这种方式存储非标准化数据是不好的做法。坚持任务及其相关员工的更好方法是这样的:
name_task | ID
cleaning | 1509
cleaning | 1510
cleaning | 1511
washing | 1001
...
这使得处理数据变得更加容易,因为数据库不再需要从字符串中筛选出员工。