Cita: column "familia_x_hijos.id_familia" must appear in the GROUP BY clause or be used in an aggregate function line 16 at SQL statement
Se debe a que esta consulta tiene un count diferente para cada id_familia, por lo que es necesario establecer el agrupamiento de la consulta.
La pregunta aca es:
En la tabla familia_x_hijos puede existir varias familias por niño? Si es así tiene sentido el error, de lo contrario no debería dar problema.
Solución:
SELECT id_familia, count(id_familia) AS numhijos FROM familia_x_hijos WHERE id_nino=$1 group by id_familia
Sin embargo, no termino de entender, como puede ser posible que en la tabla familia_x_hijos pueda existir varias familias por cada niño.
Aclaranos esto.