Здравствуйте.
Объединяю 2 таблицы с помощью JOIN и условием мне нужно сгруппировать с помощью GROUP BY по полю game_id (номеру игры) поле price, но никак не выходит.
Вот кусок запроса, где я остановился на данный момент и скрин, что получаю.
SELECT * FROM `roulette_bets` LEFT OUTER JOIN `roulette_games` ON `roulette_bets`.`game_id` = `roulette_games`.`id` WHERE `roulette_bets`.`user_id`=36454 GROUP BY roulette_bets.id
ORDER BY `roulette_bets`.`game_id` DESC
Если в запросе пишу GROUP BY roulette_bets.game_id то выходит ошибка такая
"#1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'gosens.roulette_bets.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"
Попробовал сделать вот так.
SELECT roulette_bets.game_id, roulette_bets.user_id, SUM(roulette_bets.price) as pricebets FROM `roulette_bets` JOIN `roulette_games` ON `roulette_bets`.`game_id` = `roulette_games`.`id` WHERE `roulette_bets`.`user_id`=36454 GROUP BY roulette_bets.game_id
ORDER BY `roulette_bets`.`game_id` DESC
То всё нормально, он группирует по game_id и успешно складывает поле price, но! Он выводит всего 3 поля, а мне нужны все поля из двух таблиц, а выводит как на скрине.
Помогите, запутался.
Структура таблицы
roulette_bets скрин ниже:
Структура таблицы
roulette_games скрин ниже:
roulette_bets.game_id = roulette_games.id
Мне нужно получить например по игре 64677 (первый скрин в теме), поля game_id, user_id, price, fund, commission, random_number, created_at. Цену PRICE нужно сложить в одну сумму по game_id
И получим, игра 64677 = , user_id=36454, price=5.2 и т.д.