I have a table like this (sample):
Name_Seller Month Value
---------------------------
Seller A Jan 200
Seller B Jan 100
Seller A Fev 300
Seller B Fev 100
Seller C Jan 400
Seller A Mar 200
Seller D Jan 300
SQL query:
SELECT Name_Seller, Month, Value
FROM SALES
WHERE Value = (SELECT MAX(Value) FROM SALES GROUP BY Name_Seller);
And I'd like to print for each seller which was his maximum sale and when it was.
Could you help me fix my query and explain why it does not work?
I tried:
select name_seller, month, max(value)
from sales
group by name_seller, month;
but this query returns:
+---------------+------------+------+
| NAME_SELLER | MAX(VALUE) | MONTH|
+---------------+------------+------+
| SELLER A | 4182.00 | Jan |
| SELLER A | 3261.00 | Fev |
| SELLER A | 4219.00 | Mar |
| SELLER B | 2123.00 | Jan |
| SELLER B | 2111.00 | Fev |
| SELLER B | 3918.00 | Mar |
| SELLER C | 3000.00 | Jan |
| SELLER C | 4000.00 | Fev |
| SELLER C | 1500.00 | Mar |
| SELLER D | 2819.00 | Jan |
| SELLER D | 3881.00 | Fev |
| SELLER D | 2012.00 | Mar |
+---------------+------------+------+
And I would like just THE TOP sale of each salesman and when it was.
So it should return just one sale for each salesman.

