WildSery wrote:
select did, (select sum(l.enum5*d.dnum8) from lin l where d.did = l.eiddoc) from doc d where d.dnum5 != (select sum(l.enum5*d.dnum8) from lin l where d.did = l.eiddoc) Invalid token. Dynamic SQL Error. SQL error code = -104. Cannot use an aggregate function in a WHERE clause, use HAVING instead. Объясните мне, пожалуйста, почему в подзапросе в списке полей я могу этот запрос использовать, а вот для отбора по условию - нет.
Патамучта это агрегат (ссылка на D лежит внутри sum). Хотя тут по идее должен пропускать, т.к. агрегат относится к другому контексту...
И ещё второй вопрос - почему в FB 1.0.3 запрос выполняется без ошибок.
Старый он, глупый... -- Дмитрий Еманов

