Skip to content

NW6 | Fikret Ellek | Module-Database | E-Commerce | Week 3 #171

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions E-Commerce/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,48 @@ erDiagram
Write SQL queries to complete the following tasks:

- [ ] List all the products whose name contains the word "socks"
<!-- SELECT product_name
FROM products
WHERE product_name ILIKE '%socks%'; -->
- [ ] List all the products which cost more than 100 showing product id, name, unit price, and supplier id
<!-- SELECT p.id AS product_id, p.product_name, pa.unit_price, pa.supp_id AS supplier_id
FROM products p
JOIN product_availability pa ON p.id = pa.prod_id
WHERE pa.unit_price > 100; -->
- [ ] List the 5 most expensive products
<!-- SELECT p.id AS product_id, p.product_name, pa.unit_price
FROM products p
JOIN product_availability pa ON p.id = pa.prod_id
ORDER BY pa.unit_price DESC
LIMIT 5; -->
- [ ] List all the products sold by suppliers based in the United Kingdom. The result should only contain the columns product_name and supplier_name
<!-- SELECT p.product_name, s.supplier_name
FROM products p
JOIN product_availability pa ON p.id = pa.prod_id
JOIN suppliers s ON pa.supp_id = s.id
WHERE s.country = 'United Kingdom'; -->
- [ ] List all orders, including order items, from customer named Hope Crosby
<!-- SELECT o.id AS order_id, o.order_date, o.order_reference, oi.product_id, oi.supplier_id, oi.quantity
FROM orders o
JOIN order_items oi ON o.id = oi.order_id
JOIN customers c ON o.customer_id = c.id
WHERE c.name = 'Hope Crosby'; -->
- [ ] List all the products in the order ORD006. The result should only contain the columns product_name, unit_price, and quantity
<!-- SELECT p.product_name, pa.unit_price, oi.quantity
FROM orders o
JOIN order_items oi ON o.id = oi.order_id
JOIN products p ON oi.product_id = p.id
JOIN product_availability pa ON oi.product_id = pa.prod_id AND oi.supplier_id = pa.supp_id
WHERE o.order_reference = 'ORD006'; -->
- [ ] List all the products with their supplier for all orders of all customers. The result should only contain the columns name (from customer), order_reference, order_date, product_name, supplier_name, and quantity
<!-- product_name, supplier_name, and quantity

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like you have missed an extra line here as this is not part of the query. The query itself seems to be ok.

SELECT c.name AS customer_name, o.order_reference, o.order_date, p.product_name, s.supplier_name, oi.quantity
FROM customers c
JOIN orders o ON c.id = o.customer_id
JOIN order_items oi ON o.id = oi.order_id
JOIN products p ON oi.product_id = p.id
JOIN suppliers s ON oi.supplier_id = s.id
ORDER BY c.name, o.order_reference; -->

## Acceptance Criteria

Expand Down