INNER JOIN其中csv字段LIKE字段

时间:2012-05-16 23:27:33

标签: mysql csv inner-join

希望这是一个简单的答案,我只是在失明。

我在问卷后面有这些(简化的)表格:

questions        responses
------------     ------------
id | related     id | questions
------------     -------------
1  | 3,4,5,6     1  | 1,3
2  | 4,5,6       2  | 2
3  | 3,4,5       3  | 3,4
4  | 3,5,6       4  | 5
5  | 6           
6  | 3,4,5

相关的是填写调查问卷的用户的个人资料,问题仅显示他们的个人资料编号是否在该字段中。每个答复的措辞取决于与之相关的问题的答案。

我需要获取一个响应ID列表,其中配置文件号与该响应的相关问题相关:

SELECT `responses`.`id`
FROM `responses`
INNER JOIN `questions`
ON `responses`.`questions` LIKE CONCAT(CONCAT('%',`questions`.`id`),'%')
WHERE `questions`.`related` LIKE '%3%'

其中3是个人资料。在这种情况下,我应该只返回ID 1和3。我尝试过各种group by子句,但是我回来的id列表永远不正确。

0 个答案:

没有答案