GROUP BY
Синтаксис SQL GROUP BY
Приклад SQL GROUP BY
Є наступна таблиця "Orders":
| O_Id | OrderDate | OrderPrice | Customer |
|---|---|---|---|
| 1 | 2008/11/12 | 1000 | Hansen |
| 2 | 2008/10/23 | 1600 | Nilsen |
| 3 | 2008/09/02 | 700 | Hansen |
| 4 | 2008/09/03 | 300 | Hansen |
| 5 | 2008/08/30 | 2000 | Jensen |
| 6 | 2008/10/04 | 100 | Nilsen |
Тепер ми хочемо знайти загальну суму замовлення для кожного клієнта.
| Customer | SUM (OrderPrice) |
|---|---|
| Hansen | 2000 |
| Nilsen | 1700 |
| Jensen | 2000 |
| Customer | SUM (OrderPrice) |
|---|---|
| Hansen | 5700 |
| Nilsen | 5700 |
| Hansen | 5700 |
| Hansen | 5700 |
| Jensen | 5700 |
| Nilsen | 5700 |
SQL Group By





Коментарі
см см см м3
car.name box.name box.height box.width box.depth load.name load.volume
жигулі скринькою 1 20 30 50 корова 0,5
жигулі ящику 2 10 50 10 свиней 0,2
Lamborghini yashtik 15 березня 15 20 Картопля 0,1
Lamborghini yashtik 15 березня 15 20 Марківка 0,15
Lamborghini yashtik 4 жовтня 10 жовтня нуль нуль
Там де нул як ви здогадуєтеся ящик без вантажу. Завдання наступна. Потрібно обчислити об'єм всіх ящиків і обсяг всіх вантажів і групувати це все по імені машини.
car.name box_volume load_volume
ламборджині 0,7 0,25
PS в box_volume не розраховував точно, а поставив цифри від балди. Динячі вище тільки для прикладу як має виглядати у підсумку.
Сам запит виглдядіт приблизно так:
виберіть car.name
з автомобіля, коробка ліве об'єднання навантаження на box.id = load.box_id
групи car.name
Став на, те що не можу порахувати обсяг всіх ящиків, т.к. якщо просто вказати SUM (box.height * box.width * box.depth) / 1000000 у мене об'єм ящика 3 порахується 2 рази, а якщо використовувати вкладений запит для вибору тільки відповідних рядків з box між select і where, то GROUP BY car. name не групуються дані з підзапиту: (Підкажіть як можна вирішити дану задачу? Цитувати
категорії фірми
Реклама Mediagrup
Створення сайтів Медиагруп
Raskrutka sajtív Mediagrup
На виході має виглядати так:
Назва фірми Категорія
-
Mediagrup Реклама
Створення сайтів
Raskrutka сайтів
-
Чи можна це реалізувати за допомогою group? Або який запит тут потрібно використовувати і як його правильно обробити засобами php? Цитувати
Цитувати