SELECT
`Item Name`,
SUM(`Listing Fee`) AS `Total Fee`,
SUM(CASE `Listing Type` WHEN 'LISTED' THEN 1 ELSE 0 END) AS `Total Listed`,
SUM(CASE `Listing Type` WHEN 'SOLD' THEN 1 ELSE 0 END) AS `Total Sold`
FROM `Table Name`
GROUP BY `Item Name`
Это суммирует список, используя статические «Типы списков». Если вам нужен динамический список, вам придется построить SQL в хранимой процедуре и выполнить его.
Выход:
Item Name Total Fee Total Listed Total Sold
watch $0.70 2 1
glasses $2.50 3 1
Вы можете сделать еще один шаг:
SELECT
`Item Name`,
SUM(
CASE `Listing Type`
WHEN 'LISTED' THEN `Listing Fee`
ELSE 0
END
) AS `Total Fee Listing`,
SUM(
CASE `Listing Type`
WHEN 'SOLD' THEN `Listing Fee`
ELSE 0
END
) AS `Total Fee Sold`
FROM `Table Name`
GROUP BY `Item Name`
Выход:
Item Name Total Fee Listing Total Fee Sold
watch $0.40 $0.30
glasses $1.50 $1.00