->and_where_open()
->and_where('orders.status', '=', 'delivered')->or_where('orders.status', '=', 'new')
->and_where_close()
これは私が得たものです:
SELECT deals.*, SUM(orders.total_count) AS revenue, SUM(orders.quantity) AS qty
FROM deals
LEFT JOIN users ON (users.id = deals.partner_id)
LEFT JOIN orders ON (orders.deal_id = deals.id)
WHERE (orders.status = 'delivered' OR orders.status = 'new')
AND (title LIKE '%cake%'
OR title LIKE '%cake%'
OR description LIKE '%cake%'
)
AND deals.seller_id = 123
GROUP BY deals.ID
ORDER BY ID DESC
LIMIT 10
これは、注文があり、ステータスが配信済みまたは新規の場合にうまく機能します。
このクエリで、注文がないものも含め、すべての取引を表示したいと思います。
したがって、この deal_id の注文が存在する場合は、SUM() を実行して、orders.status が配信済みか新規かを確認する必要があります。代わりに、このクエリは取引行を除外しますが、代わりにそれを取得したいと考えています。
これはどのように行うことができますか?