如何调试失败的SELECT语句?

时间:2016-08-17 02:14:35

标签: php mysql

是否有一个简单的解释为什么这个查询不起作用,它的替代方案是什么?

SELECT * FROM items WHERE item_category = 'shirts'
    AND WHERE item_category = 'pants'

我必须遵守条款:

SELECT * FROM items

因为我需要选择供以后使用的所有数据。

2 个答案:

答案 0 :(得分:4)

不要包括WHERE两次:

SELECT * FROM items WHERE item_category = 'shirts' OR item_category = 'pants'

您也不想指定“AND”,因为同时item_category shirtspants不会相同时间。

答案 1 :(得分:4)

您有两个WHERE个关键字;第二个是没有必要的 - 它会产生错误。

但是,您应该简化查询以使用IN

SELECT i.*
FROM items i
WHERE i.item_category IN ('shirts', 'pants');