我有 2 个 sql 表 表名:代理 包含一个带有列 AgentID 的记录
表名为:空缺是显示数据 ans 的表。名为 vacancies 的表有 vacancies.Agents 包含与此类似的值
VacanyID Company position CTC Candidates Agents
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FBVAC001 | HDFC | Branch Manager | 4.5 | FBCAN001,FBCAN002| Agent3,Agent4
FBVAC003 | TBNH | Branch Manager | 4.5 | FBCAN004,FBCAN005| Agent2,Agent4
FBVAC005 | MMNT | Branch Manager | 4.5 | FBCAN008,FBCAN006| Agent3
FBVAC008 | LCFC | Branch Manager | 4.5 | FBCAN009,FBCAN023| Agent3,Agent4
FBVAC008 | KOTC | Branch Manager | 4.5 | FBCAN009,FBCAN023| Agent5,Agent4
我想运行一个查询,该查询将只返回那些包含对应于表名代理的代理的值的记录。代理ID。这是迄今为止的查询,但它返回的只是那些在 vacancies.Agents 中没有多个值的记录
例如,如果要搜索的值是 Agent3,它应该返回 rows1,3 和 4,而不是只返回第 3 行。
SELECT
vacancies.VacancyID,
vacancies.Company,
vacancies.`Position`,
vacancies.CTC,
vacancies.Candidates,
vacancies.Agents
FROM vacancies
, agents
WHERE (FIND_IN_SET(vacancies.Agents,agents.AgentID) <> 0)
如何解决?