У меня есть две таблицы, а именно активность и карты,
**Activity**
+----+--------+--------+
| ID | Number | Amount |
+----+--------+--------+
| 1 | 12345 | 100 |
| 2 | 12134 | 200 |
| 3 | 12345 | 600 |
| 4 | 15647 | 50 |
| 5 | 12134 | 202 |
+----+--------+--------+
**Cards**
+----------+------------+
| Number | Type |
+----------+------------+
| 12345 | visa |
| 12134 | mastercard|
| 15647 | diners |
+----------+------------+
Я хотел бы запросить идентификатор транзакции, который имеет самую дорогую сумму среди всех транзакций, использующих карту одного типа.
+----+
| ID |
+----+
| 3 | (ID 3 have the Highest Amount transacted on card type Visa)
| 4 | (ID 4 have the Highest Amount transacted on card type Master)
| 5 | (ID 5 have the Highest Amount transacted on card type diners)
+----+
Может ли это быть сделано с агрегированным запросом и без него?
Мне удалось запросить тип карты и соответствующую ей наибольшую сумму, потраченную за одну транзакцию
SELECT c.Type, MAX(a.Amount) AS Highest_Transaction
FROM Cards AS c, Activity AS a
WHERE c.Number = a.Number
GROUP BY c.Type
Но не уверен, как запросить только идентификатор из таблицы активности, используя «Тип» в качестве GROUP по параметру.