Php mysql查询-排除条目

Php mysql查询-排除条目,php,mysql,database,Php,Mysql,Database,我有两个表,一个表是订单,另一个表是订单项目订单项目包含来自订单的订单id的许多记录。我想查询表order,以便在订单包含某些订单项(例如product\u项='nameProduct')时使用。它将把这些订单排除在结果之外。我该怎么做 我目前的问题是: select * orders where order_id in (select order_id from order_items where product_item !='nameProduct'); 此查询实际上不起作用,因为从订单

我有两个表,一个表是订单,另一个表是订单项目订单项目包含来自订单的订单id的许多记录。我想查询表order,以便在订单包含某些订单项(例如
product\u项='nameProduct'
)时使用。它将把这些订单排除在结果之外。我该怎么做

我目前的问题是:

select * orders where order_id in (select order_id from order_items where product_item !='nameProduct');
此查询实际上不起作用,因为
从订单项目中选择订单id,其中产品项目!='nameProduct'
仍然可以选择具有相同的
订单id的条目
,但只具有不同的
产品项目


提前谢谢

就性能而言,在内部查询中执行
SELECT*
与执行类似
SELECT'X'
或其他伪值的操作是否有关系?@NullUserException可能不在MySQL中。听起来像是围绕
COUNT(*)
vs
COUNT(1)
的相同参数。FWIW,我一直在
存在中使用
选择1
-queries@Null-不应该这样。在SQL Server中肯定没有。子查询可能会导致问题
SELECT  *
FROM    orders o
WHERE   NOT EXISTS ( SELECT *
                     FROM   order_items oi
                     WHERE  product_item = 'nameProduct'
                            AND oi.order_id = o.order_id )