Нарушена логика построения SQL-запроса в DELPHI

При попытке вывести в DBGrid результат sql-запроса возникает ошибка:

введите сюда описание изображения

Сам sql-запрос выглядит так: select Genious.*, count(Species.idG) as amount from Genious, Species where Genious.idG = Species.idG group by Genious.idG

Скриншоты таблиц Базы Данных: введите сюда описание изображения

введите сюда описание изображения

После "преобразования" sql-запроса мне удалось всё-таки выполнить задачи - в DBGrid появилась столбец с количеством видов в данном роде, но лишь только с другим столбцом idG, остальные столбцы вывести не получилось(см. начало)

введите сюда описание изображения

SQL-запрос "преобразованный": select Genious.idG, count(Species.idG) as amount from Genious, Species where Genious.idG = Species.idG group by Genious.idG

Наведите на путь истинный, пожалуйста. Пытался через вычисляемые поля сделать, но не хватает знаний.


Ответы (1 шт):

Автор решения: santavital

sql запрос с использованием агрегатной функции должен выглядеть следующим образом:

select ГруппируемыеПоля, Функция(Поле) from Таблица Group by ГруппируемыеПоля

Поэтому очевидно что select Genious.*, count(Species.idG) является ошибкой (т.к. Group by * ошибка синтаксиса)

→ Ссылка