Keine Ahnung warum.
In solchen Fällen versuche ich, so klassisch wie möglich zu arbeiten. Also ausprobieren, ob eine möglichst konventionelle oder Standard-nahe Schreibweise hilft.
1. Aliase nutzen, fehlt beim Count Ausdruck
2. Join Notation verwenden (statt where)
3. Select Statement verschachteln, also ein (normal nicht benötigtes) 2. Select um das nicht funktionierende herumbauen, natürlich ohne weitere Bedingungen und so.
Alternativ die eigentliche Fehlerquelle eingrenzen, indem bestimmte Konstrukte systematisch entfernt werden, z.B. hier das Count. Das bedeutet, ein komplexes Stück Code /
SQL so lange vereinfachen, bis man auf minimale Art den Fehler reproduzieren kann. So kann man wenigstens rausfinden, was funktioniert und wo man vielleicht workarrounds finden muss. Das reduzierte Code Fragment eignet sich auch prima für Nachfragen in Foren.
P.S.: 4. das Count(feldname) durch count(*) ersetzen