Poziom średniozaawansowany

Zadanie 13

Używając podkwerend, znajdź magazyny, które dostarczają produkty z zamówienia nr 2393.

Schemat: OE, Tabele: Inventories, Order_Items, Kolumny: product_id, warehouse_id, quantity_on_hand, order_id, Wynik: 39 rows

 

 

 

 

[spoiler title=’Rozwiązanie’ style=’default’ collapse_link=’true’]

SELECT product_id AS product, warehouse_id AS warehouse, quantity_on_hand AS quantity

FROM inventories

WHERE product_id IN

( SELECT product_id FROM order_items WHERE order_id = 2393

)

ORDER BY product, warehouse;

Wersja która dodatkowo podpowiada czy w magazynie jest wystarczająca ilość towaru:

SELECT product_id, warehouse_id, quantity_on_hand,

(SELECT quantity FROM order_items oi WHERE order_id = 2393

AND inv.product_id = oi.product_id) AS ordered_quantity,

CASE

WHEN (SELECT quantity FROM order_items oi

WHERE order_id = 2393

AND inv.product_id = oi.product_id) <= quantity_on_hand

THEN 'yes’

ELSE 'no’

END AS „ENOUGH?”

FROM inventories inv

WHERE product_id IN

(SELECT product_id FROM order_items WHERE order_id=2393)

ORDER BY product_id, warehouse_id;

[/spoiler]

Alexandretta

Kobieta gracz. Po godzinach pracy, z zapałem i piekielnymi ognikami w oczach biega po lochach i tłucze bogu ducha winne zombie czy inne szkielety. Miłośniczka wszelkiej maści cRPG. Notoryczne problemy z wyborem klasy i rasy, bo wszystko fajne... W chwilach zwątpienia zatraca się przy dźwiękach mieczy, roztrzaskiwanych tarcz i okrzyków bojowych, słuchając wiking metalu z zimnej, niegościnnej, odległej Skandynawii. Czasem zdarzy jej się pograć w jakąś strategię bądź nawet w FPP, ale tylko na easy, żeby nie psuć sobie niepotrzebnie nerwów.

Related Articles

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

Back to top button