mysql> select * from test;
+------+------+------+
| a    | b    | c    |
+------+------+------+
| 5    | 6    | 1    |
| 1    | 5    | 6    |
| 6    | 5    | 1    |
| 6    | 1    | 5    |
| 1    | 2    | 3    |
+------+------+------+mysql> select * from test where FIND_IN_SET('5',CONCAT_WS(',',a,b,c)) && FIND_IN_SET('6',CONCAT_WS(',',a,b,c));
+------+------+------+
| a    | b    | c    |
+------+------+------+
| 5    | 6    | 1    |
| 1    | 5    | 6    |
| 6    | 5    | 1    |
| 6    | 1    | 5    |
+------+------+------+

解决方案 »

  1.   

    呵呵,我只会这么写,蛮力a=5 || b=5 || c=5 || a=6 || b=6 || c=6或者用 UNION
      

  2.   

    a ,b ,c 是字段名即变量 ,FIND_IN_SET()函数的第二个参数要的是字符串列表,用变量也可以吗?
      

  3.   

    select * from table_name where 5 IN (a,b,c)&& 6 IN (a,b,c);不知道行不,2楼太强悍了
      

  4.   

    a ,b ,c 是字段名即变量 ,FIND_IN_SET()函数的第二个参数要的是字符串列表,用变量也可以吗?=====================================================================测试结果已经回答了
      

  5.   

    FIND_IN_SET()的第二个参数是CONCAT_WS()函数返回一个字符串