I have two tables:
| customers | ||
|---|---|---|
| id | name | order_id | 
| orders | |||
|---|---|---|---|
| id | customer_id | date | amount | 
I would like to get the first order for each customer so I used inner join & min on date. however, I'd like to get all order columns as well.
My SQL query is
SELECT 
    customers.id, customers.name, 
    MIN(orders.date) 
FROM 
    customers
INNER JOIN 
    orders ON customers.id = orders.customer_id
GROUP BY   
    customers.id;
When I try to add more columns from orders table as following:
SELECT 
    customers.id, customers.name, 
    MIN(orders.date), orders.id, orders.amount 
FROM 
    customers
INNER JOIN 
    orders ON customers.id = orders.customer_id
GROUP BY 
    customers.id;
I get an error
ERROR: column "orders.id" must appear in the GROUP BY clause or be used in an aggregate function
 
     
     
     
    