Вот такой запрос:

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.

Объясните мне, пожалуйста, почему в подзапросе в списке полей я могу этот 
запрос использовать, а вот для отбора по условию - нет.
И ещё второй вопрос - почему в FB 1.0.3 запрос выполняется без ошибок.

-- 
Сергей Смирнов.

Ответить