Ciao piero.mac, grazie dell'attenzione. Cerco di spiegarmi meglio.

Supponiamo che la relazione tra x e y sia di uno a molti, ad esempio x tabella clienti e y tabella ordini.

La query che devo fare deve estrarre i clienti che abbiano ad esempio almeno 2 ordini fatti, quindi:

codice:
SELECT tab_x.id, count(tab_y.id) AS nr_y
FROM tab_x LEFT JOIN tab_y ON tab_y.x_id=tab_x.id
GROUP BY tab_x.id
HAVING nr_y>=2
Partendo da questa query devo ottenere un'altra query che conti il numero di record estratti dalla prima.

Se non ho un costrutto group by-having, la soluzione è semplice, come ho segnalato nel primo post. Avendo invece il group by, se io sostituisco alla select il count(tab_x.id), non ottengo una sola riga con il totale dei record, ma n righe per ogni gruppo di tab_x.id.

Il group by non lo posso togliere perché la clausola in having è fondamentale per calcolare il numero di elementi della tabella x che devo estrarre. Mi chiedevo quindi se esistesse un modo semplice per risolvere questo problema: per ora non mi è venuto in mente.