आप जो भी चुनें, ध्यान रखें कि शॉर्ट कोड हमेशा इष्टतम कोड नहीं होता है। कई मामलों में, जहां आपके पास पर्याप्त रूप से भिन्न तर्क है, परिणामों को जोड़ना वास्तव में सबसे इष्टतम (और कभी-कभी सबसे साफ, प्रोग्रामिक रूप से) विकल्प है।
उस ने कहा, निम्नलिखित या WHERE क्लॉज में आपके दोनों मामले शामिल हैं...
SELECT DISTINCT
shops.*,
DA.delivery_cost,
DA.postcode AS AreaPostcode
FROM
shops
INNER JOIN
shops_delivery_area as DA
ON (DA.shop_id = shops.id)
WHERE
(DA.postcode = "Liverpool")
OR
(DA.postcode = shops.postcode AND shops.location = "Liverpool")