Я всегда получаю ту же ошибку, когда я запускаю этот запрос. Я попытался использовать простой запрос, чтобы проверить, есть ли что-то не так в запросе. Я также заметил, что ошибка произошла, когда я использовал представление в моем запросе.databasename.d.first_column_in_the_table 'не находится в GROUP BY
CREATE OR REPLACE VIEW v_vss_car_wash AS
SELECT
max(r.id) AS id
,d.id AS dealer_id
,d.dealer_code
,d.dealer_name
,count(*) AS total_respondents
,sum(car_washed) AS car_washed -- Car Washed
,count(*) - sum(car_washed) AS car_unwashed -- Car Unwashed
,sum(IF (car_washed AND car_satisfied, 1, 0)) AS car_satisfied
,sum(IF (car_washed AND NOT car_satisfied, 1, 0)) AS car_unsatisfied
,MONTH(r.create_date) AS create_month
,YEAR(r.create_date) AS create_year
FROM t_vss_survey_response r
LEFT JOIN t_vss_dealer d ON (r.dealer_id = d.id)
WHERE survey_code = "ASS"
GROUP BY dealer_code, YEAR(r.create_date), MONTH(r.create_date);
, то это мой им запрос с использованием (очень простой), но я всегда получаю ту же ошибку.
выберите a.dealer_name, a.dealer_code из v_vss_car_wash
сейчас, это сообщение об ошибке
Вызванный: org.eclipse.birt.data.engine.odaconsumer.OdaDataException: Не удается получить метаданные набора результатов. org.eclipse.birt.report.data.oda.jdbc.JDBCException: Оператор SQL не возвращает объект ResultSet. Ошибка SQL # 1: 'crmsdbdev.d.dealer_name' не находится в GROUP BY ; com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 'crmsdbdev.d.dealer_name' не в GROUP BY
просто добавьте 'д. dealer_name' в * GROUP BY *. 'ONLY_FULL_GROUP_BY' может быть включен, поэтому вам нужно добавить все столбцы в предложение * SELECT *, которые не агрегированы. –