Я довольно новичок в MySql (3 месяца обучения на YouTube), и большая часть моего опыта связана с PHP / HTML (4-5 лет создания сайтов), и я пытаюсь создать отчет для некоторых данных, которые я началСбор.
Любая помощь, которую вы можете предоставить, очень ценится!
У меня есть база данных MySql, которая собирает несколько столбцов материалов / продуктов, которые соответствуют количеству материалов, которые использовались на строительной площадке..
Данные в настоящее время выглядят так:
Material1 | Quantity1 | Material2 | Quantity2 | Material3 | Quantity3|
Concrete Bags| 35 | Hydroseed | 1300 | Diesel Fuel | 40 |
Straw Wattles| 32 | Wooden Stakes| 200 | Diesel Fuel | 30 |
Hydroseed | 1000 | Wooden Stakes| 100 | Diesel Fuel | 20 |
Какой запрос или процесс можно использовать для добавления количества материалов с одинаковыми именами и объединения названий материалов?Hydroseed has two entries, 1300 + 1000 = 2300; Diesel Fuel has three entries, 40 + 30 + 20 = 90; etc.
Material1, Material2, Material3 = MaterialName
Я хочу отобразить это следующим образом:MaterialName | Quantity |
Concrete Bags | 35 |
Hydroseed | 2300 |
Straw Wattles | 32 |
Wooden Stakes | 300 |
Diesel Fuel | 90 |
Я не совсем уверен, как подойти к этому.
Мой текущий запрос выглядит так:
("SELECT Material1 AS MaterialName FROM table UNION SELECT Material2 AS MaterialName FROM table UNION SELECT Material3 AS MaterialName FROM database GROUP BY MaterialName");
Я не знаю, что делатьделать с количествами - я не знаю, как объединить два запроса и сопоставить итоговые значения с правильным названием материала - возможно, что-то вроде этого:
("SELECT *, SUM(Quantity1 + Quantity2 + Quantity3) AS Quantity FROM table GROUP BY MaterialName");