2

我正在尝试根据类别和设计师的 id 过滤我的产品,但是,我返回了一个错误的类别,该类别与特定的设计师没有关联,这就是我尝试过的:

SELECT * 
FROM  `items` 
WHERE category =  'dress1'
OR category =  'dress2'
or category = 'skirt'
OR designerID =  '1'
OR designerID =  '2'

现在我得到dress1、dress 2、AND裙子的输出,但是设计师ID都没有连接到“裙子”类别,为什么它仍然返回?

谢谢

4

3 回答 3

3

我猜你想要这样的东西:

SELECT 
  *
FROM 
  items
WHERE
  category in ('dress1','dress2','skirt')
  and designerID in ('1','2')
于 2013-09-20T18:29:35.857 回答
2

如果我理解您的要求,听起来您希望结果具有category dress1dress2skirt,但前提是它们designerID具有1or 2

如果是这样你需要一个AND条款,我会让你的WHERE条款看起来像这样:

WHERE (category =  'dress1'
OR category =  'dress2'
OR category = 'skirt')
AND (designerID =  '1'
OR designerID =  '2')
于 2013-09-20T18:28:55.973 回答
0

试试这个:如果你想要设计师 1 和 2 以及所有三种 dres 类型

SELECT * FROM  `items` WHERE category in('dress1','dress2','skirt') OR designerID in('1','2');

如果你想要 Designer 和 dres put 和 AND 而不是 OR 的组合

于 2013-09-20T18:30:36.513 回答