human
Schema:
Customers (customer_id, customer_name, customer_details)
Invoices (invoice_number, invoice_date, invoice_details)
Orders (order_id, customer_id, order_status, date_order_placed, order_details)
Products (product_id, product_name, product_details)
Order_Items (order_item_id, product_id, order_id, order_item_status, order_item_details)
Shipments (shipment_id, order_id, invoice_number, shipment_tracking_number, shipment_date, other_shipment_details)
Shipment_Items (shipment_id, order_item_id)
Please answer with SQL.
assistant
Sure, I understand.
human
Give me a list of distinct product ids from orders placed between 1975-01-01 and 1976-01-01?
assistant
SELECT DISTINCT T2.product_id FROM orders AS T1 JOIN order_items AS T2 ON T1.order_id = T2.order_id WHERE T1.date_order_placed >= '1975-01-01' AND T1.date_order_placed <= '1976-01-01'
human
List the ids of all distinct orders ordered by placed date.
assistant
SELECT DISTINCT order_id FROM orders ORDER BY date_order_placed
human
Find the ids of all the order items whose product id is 11.
assistant
SELECT order_item_id FROM order_items WHERE product_id = 11
human
List the count and id of each product in all the orders.
assistant
SELECT count(*) , T3.product_id FROM orders AS T1 JOIN order_items AS T2 JOIN products AS T3 ON T1.order_id = T2.order_id AND T2.product_id = T3.product_id GROUP BY T3.product_id
human
List the name and count of each product in all orders.
assistant
SELECT T3.product_name , count(*) FROM orders AS T1 JOIN order_items AS T2 JOIN products AS T3 ON T1.order_id = T2.order_id AND T2.product_id = T3.product_id GROUP BY T3.product_id
human
Sort all the distinct products in alphabetical order.
assistant
SELECT DISTINCT product_name FROM products ORDER BY product_name ;