2011-12-14 59 views
0

比方说,我的数据库中值是这样的我如何得到正确的结果搜索像1,2,3,4,5字符串在MySQL

user_id question_id 
--------------------- 
1  1,2,3,4,5 
2  3,4,5 
3  1,3,5 
4  3,4,5,6,7 

什么是正确的语句来找出哪个用户使用完全相同question_id1 & 5

$query = '1,5'; 

question_id LIKE '%" . $query . "%' 
FIND_IN_SET(question_id,'" . $query . "') 
question_id IN ('" . $query . "') 

我使用LIKE试过,FIND_IN_SET & IN但结果不正确。

所以我想结果应该是

user_id question_id 
--------------------- 
1  1,2,3,4,5 
3  1,3,5 

让我知道..

+1

哪里任何的最佳做法说“存储数据为CSV”? – gbn 2011-12-14 09:11:29

+5

你应该规范化,每个用户可以有多个问题ID。 – ajreal 2011-12-14 09:11:37

回答

1

$查询= '1.5'; 解析为两个变量

$query1 = '1'; 

$query2 = '5'; 

现在创建查询动态

FIND_IN_SET('" . $query1 . "', question_id) AND FIND_IN_SET('" . $query2 . "', question_id) 
相关问题