カンマ区切りの値を持つフィールドに対してすべてのレコードを検索しますデータが表示されています。 表という名前の空孔が、私は、テーブル名のエージェントからagents.AgentIDに対応する値が含まれているレコードだけを返します。クエリを実行したいこのMySQLのクエリは、私は2つのSQLテーブル テーブル名持た
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
にsimmilar値が含まれ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)
どのように解決できますか?
私はそれを逆にして試しましたが、すべての行と各行の重複が表示されます。 –
'Agent3'だけが必要な場合は、'とAgentID = 'Agent3''も検索する必要があります。投稿への私の更新を見てください。 – mellamokb
私は実行時の例としてagent3を挙げました。私は実際にテーブルエージェントの列AgentIDに対してそれをチェックしたいと思う。 –