使用CSV

时间:2016-09-09 03:17:44

标签: mysql csv

SELECT DISTINCT example_type FROM Table_name WHERE 80 IN(example_type);

我使用的值是66和80。

列的值有时是“66,80”,有时是“80,66”。

如果是搜索80,则只有当列为“80,66”(或“80”)时才返回匹配。

如果是搜索66,则只有当列为“66,80”(或“66”)时才返回匹配。

列类型设置为TEXT。

以下按预期工作:(两者都匹配)

.... 80英寸(66,80)......

.... 80英寸(80,66)......

我想将列的内容保留为CSV。

无论CSV的顺序如何,我需要对MySQL查询做什么才能使其工作?

2 个答案:

答案 0 :(得分:0)

可能是,您可以使用以下where子句:

 WHERE column_name like '%80%'

如果你的两个查询是正确的,那么你可以在mysql中使用union子句

 SELECT ... FROM ... WHERE (your first condition)
 UNION
 SELECT ... FROM ... WHERE (your second condition)

答案 1 :(得分:0)

SELECT DISTINCT example_type FROM Table_name WHERE FIND_IN_SET(80,example_type);

这是基于最终代码:

        WHERE ...a.is_special = 1
            AND (a.foo_list = '' OR FIND_IN_SET($foo_id, a.foo_list))
            AND (a.bar_list = '' OR FIND_IN_SET($bar_id, a.bar_list))
            AND (a.baz_list = '' OR FIND_IN_SET($baz_id, a.baz_list))";