我试图根据所选列的值从mysql数据库中选择多行,我是php和sql的新手所以这可能是一些简单的东西,我似乎无法找到任何类似于我的情况。这是我正在运行的查询:
SELECT COUNT(userid) AS numrows
FROM orders
WHERE (
`dispatched` = 'no'
AND `orderstatus` = 'Complete'
AND `category` = 'tosort'
)
OR
(`category` = 'new')
这会计算所有字段,只显示10左右。
谢谢, 大卫
答案 0 :(得分:0)
你得到的错误是什么?因为现在看代码,看起来没问题。
您要么想要“已发送 - 不,订单 - 完成和类别 - tosrt”的记录,要么是“类别 - 新”的任何内容。
编辑:哦,远射,也许你需要用()
替换{和}答案 1 :(得分:0)
不要使用括号,请使用括号。这对我有用:
select count(*) as numrows
from orders
where (dispatched = 'no' and orderstatus = 'Complete' and category = 'tosort')
or category = 'new';
答案 2 :(得分:0)
非常感谢你的快速回复,在玩了一些之后我设法让这个工作。在这里,如果你有人正在阅读这个寻找相同的答案:
SELECT COUNT(userid) AS numrows FROM orders WHERE (`dispatched` = 'no' AND `orderstatus` = 'Complete' AND `category` = 'tosort') OR (`dispatched` = 'no' AND `orderstatus` = 'Complete' AND `category` = 'new')
再次感谢!