Вопрос по MySQL
> WITH TempTable AS (
-> SELECT *, Productcount * Price AS TotalPrice FROM Products WHERE Manufacturer = 'Apple' LIMIT 2
-> )
-> SELECT * FROM TempTable UNION ALL
-> SELECT '', '', '', '', 'Total:', SUM(TotalPrice) FROM TempTable;
Задача стояла, у каждой модели телефона найти общую сумму за все телефоны и внеси эту сумму в totalPrice.
Далее, необходимо было отдельной строкой посчитать сумму этих сумм (капитализация вообще всего склада телефонов).
Есть ли другие варианты решения этой задачи?
Структуру таблиц покажи
Насколько понял, тебе просто надо посчитать SELECT SUM(ProductCount * Price) AS totalPrice FROM products WHERE Manufacturer = 'Apple';
SELECT Manufacturer, COUNT(ProductName) AS Models FROM Products GROUP BY Manufacturer;
Получил
+--------------+--------+
| Manufacturer | Models |
+--------------+--------+
| Samsung | 20 |
| Apple | 15 |
| Xiaomi | 25 |
| Nokia | 20 |
| ZTE | 20 |
| Huawei | 25 |
| Sony | 20 |
+--------------+--------+
И как мне теперь получить дополнительнной строкой ИТОГО: (20+15+25+20+20+25+20)
>Есть ли другие варианты решения этой задачи?
Разумеется есть. Кроме твоего "варианта" есть еще правильный. Например, такой:
SELECT Manufacturer, SUM(Productcount * Price) AS TotalSales
FROM Products
GROUP BY Manufacturer
UNION ALL
SELECT 'TOTAL', SUM(Productcount * Price)
FROM Products Этот ответ подходит, если надо вывести сумму со всей таблицы по всем производителям и их моделям телефонов. Если речь про взятых отдельно производителей, то этот вариант не работает.