这是我第二次遇到此类问题来检索数据。
CREATE TABLE `pm_projects` (
`project_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`project_name` varchar(255) NOT NULL,
`assigned_client` varchar(100) NOT NULL,
`project_detail` longtext NOT NULL,
`creation_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`project_status` tinyint(1) NOT NULL,
PRIMARY KEY (`project_id`),
KEY `assigned_client` (`assigned_client`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8
在上表中,我有一个字段assigned_client
,其中包含分配给项目的客户端的多个 id,用逗号分隔 ( 3,4,...
)。
我正在尝试使用分配的客户名称(在我的pm_users
表上)获取此表上的结果JOIN
,我尝试了以下操作:
SELECT
p.project_id, u.user_name, p.project_name,
p.creation_date, p.project_status
FROM pm_projects p
LEFT JOIN pm_users u ON u.user_id
IN (
'p.assigned_clients'
)
返回字段的NULL
值u.user_name
。
我可以更改我的架构吗,如果是,那么如何?
或者我正在尝试错误的查询?