0

私がこれを持っているとき:

SELECT * FROM orders_chosenoptions
RIGHT JOIN orders ON (orders.ID = orders_chosenoptions.order_id)
WHERE orders.deal_id = 982
AND orders.status = 'new'

41行になります。これらの行のorders_chosenoptions.product_idは110または111になります

SELECT * FROM orders_chosenoptions
RIGHT JOIN orders ON (orders.ID = orders_chosenoptions.order_id)
WHERE orders.deal_id = 982
AND orders.status = 'new'
AND (orders_chosenoptions.product_id = 110 OR orders_chosenoptions.product_id = 111)

35列になりますか?!それがどういうわけか正しい参加を止めるように?

110または110以外の製品IDを持つ行はありません。

4

2 に答える 2

0

これを試して::

SELECT * FROM orders_chosenoptions
RIGHT JOIN orders ON (orders.ID = orders_chosenoptions.order_id)
WHERE orders.deal_id = 982
AND orders.status = 'new' AND
orders_chosenoptions.product_id in (110, 111)
于 2012-11-08T12:29:04.263 に答える
0

これを試して

SELECT * FROM orders_chosenoptions
RIGHT JOIN orders
  ON orders.ID = orders_chosenoptions.order_id
  and orders.deal_id = 982
  AND orders.status = 'new' 
where orders_chosenoptions.product_id = 110
   OR orders_chosenoptions.product_id = 111
于 2012-11-08T12:29:18.113 に答える