I am trying to write a query in Oracle which will return id of the driver who transported the most goods in range of a single goods category.
So far my query is as follows:
SELECT
truckset.driver_id, cargo.additional_liecence_id,
SUM(order_details.cargo_amount) as cargo_sum
FROM
order_details
INNER JOIN
truckset on truckset.order_id = order_details.order_id
INNER JOIN
cargo on order_details.cargo_id=cargo.id
WHERE
cargo.additional_liecence_id IS NOT NULL
GROUP BY
truckset.driver_id, cargo.additional_liecence_id
ORDER BY
SUM(order_details.cargo_amount) DESC;
And it returns:
| DRIVER_ID | ADDITIONAL_LICENCE_ID | CARGO_SUM |
| 14 | 8 | 174 |
| 17 | 8 | 144 |
| 7 | 5 | 70 |
| 11 | 5 | 50 |
| 7 | 6 | 50 |
while I expect something like this:
| DRIVER_ID | ADDITIONAL_LICENCE_ID | CARGO_SUM |
| 14 | 8 | 174 |
| 7 | 5 | 70 |
| 7 | 6 | 50 |