【问题标题】:MySQL Query a List of ValuesMySQL 查询值列表
【发布时间】:2012-01-20 17:39:18
【问题描述】:

我想从值列表中创建一个查询,并为cat 的每个匹配项返回数据。

这可行,但不需要options 值。查询值列表更简单的方法是什么?

SELECT * 
FROM `table1` 
WHERE `option`='R' && `cat`='12' || `cat`='18' || `cat`='30'

【问题讨论】:

    标签: mysql


    【解决方案1】:

    您可以使用IN 运算符

    `cat` IN ('12', '18', '30')
    

    【讨论】:

    • 这会比对cat='12'、cat='18' 和 cat='30' 进行 3 个单独/单独的查询更快吗?
    【解决方案2】:

    您可能忘记将那些 OR 部分括在括号中

    SELECT * 
    FROM `table1` 
    WHERE `option`='R' and (`cat`='12' or `cat`='18' or `cat`='30')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      • 1970-01-01
      相关资源
      最近更新 更多