У меня есть таблица со значениями, подобными этому, ниже единицы.
| Кол1 | Кол2 | Кол3 | Кол4 | столбец5 |
|---|---|---|---|---|
| 1 | Джон | азбука | 10 | 20 |
| 1 | Джон | дирхам ОАЭ | 52 | 15 |
| 1 | Джон | азбука | 12 | 10 |
| 1 | Джон | дирхам ОАЭ | 20 | 5 |
| 1 | Джон | азбука | 10 | 5 |
| 2 | Отметка | ДДД | 42 | 8 |
| 2 | Отметка | ВВВ | 10 | 5 |
| 3 | Бен | ЭЭЭ | 8 | 2 |
| 3 | Бен | ФФФ | 1 | 1 |
| 3 | Бен | ЭЭЭ | 2 | 3 |
Я хочу сгруппировать их следующим образом
| столбец1 | столбец2 | столбец3 | столбец4 | столбец5 |
|---|---|---|---|---|
| 1 | Джон | азбука | 32 | 35 |
| 1 | Джон | дирхам ОАЭ | 72 | 20 |
| 2 | Отметка | ДДД | 42 | 8 |
| 2 | Отметка | ВВВ | 10 | 5 |
| 3 | Бен | ЭЭЭ | 10 | 5 |
| 3 | Бен | ФФФ | 1 | 1 |
я использовал
select col1, col2, col3, SUM(col4), SUM(col5)
from table
where [some condition]
group by col3
Я получаю ошибки. Может ли кто-нибудь помочь с этим?
Спасибо,
"Я получаю сообщения об ошибках" Пожалуйста, скопируйте/вставьте полное сообщение об ошибке (в виде текста, а не в виде изображения)
Кроме того, ошибка, которую возвращает запрос, является основой для отладки. У вас может быть просто синтаксическая ошибка в запросе, который вы выполняете, но не показываете
Вы должны группировать по всем столбцам без агрегирования.
Ошибка «Выражение № 1 списка SELECT не находится в предложении GROUP BY и содержит неагрегированный столбец 'db_1808046991.table1.col1', который функционально не зависит от столбцов в предложении GROUP BY; это несовместимо с sql_mode=only_full_group_by" (см.: DBFIDDLE ) отвечает несколько раз в stackoverflow. правильный ответ может быть: stackoverflow.com/a/41887524/724039 (не stackoverflow.com/a/41887627/724039!)
т.е. попробуй GROUP BY col1, col2, col3.






группа по закрытию должна иметь все выбранные атрибуты
группировать по col1, col2, col3, SUM(col4), SUM(col5)
Запрос становится:
select col1, col2, col3, SUM(col4), SUM(col5)
from table
where [some condition]
group by col1, col2, col3
Вам нужно создать минимальный воспроизводимый пример, поэтому
SELECT ... where [some condition] ...не подходит. когда условие не важно для вашего вопроса, вы можете легко удалитьwhere [some condition]