私は次のように3つのテーブルを持っています、
1. Link_products_price
DESC: unique_id|product_id|sub_category_id.
2. local_price
DESC: unique_id|price.
3. online_price
DESC: unique_id|price.
特定のproduct_id|sub_category_idの最低価格を選択したいと思います。
私は次のことを思いついた、
アプローチ1:
SELECT MIN(price)
FROM local_price
WHERE unique_id IN (SELECT unique_id
FROM link_products_price
WHERE product_id=1
AND sub_category_id=1)
UNION
SELECT MIN(price)
FROM online_price
WHERE unique_id IN (SELECT unique_id
FROM link_products_price
WHERE product_id=1
AND sub_category_id=1)
LIMIT 1;
アプローチ2:
これらの3つのテーブルにINNERJOINを使用してビューを作成し、アプリケーションから必要な場合はビューからMIN(価格)をクエリします。
ただし、その後、viewは実行時にのみクエリを実行します。
アプローチ1のクエリが問題ないかどうか、またはさらに最適化できるかどうかと、VIEW
アプローチに関するアドバイスを教えてください。