PostageRules私はこのクエリを持っていますが、参加したいだけで、値が -1 のPostageGroups場合p.delivery
明確にするために、1 つの配信値のみが必要です。-1 の場合は、テーブルから値p.deliveryを取得する必要があります。現時点では、クエリはの値に関係なく取得しますpo.deliveryPostageRulespo.deliveryp.delivery
これは単一のクエリで達成できますか?
SELECT
p.id as prod_id, p.delivery as delivery,
po.delivery AS delivery
FROM
products AS p
LEFT JOIN
PostageRules AS po ON p.shopkeeper = po.shopkeeper
LEFT JOIN
PostageGroups AS pg ON po.groupID = pg.id
AND po.minQty <= 1
AND po.maxQty >= 1
AND po.minPrice <= p.Price
AND po.maxPrice >= p.Price
AND po.minWeight <= p.weight
AND po.maxWeight >= p.weight
WHERE
(p.id = '32323')
ORDER BY
po.preference