Potrebbe essere così:
codice:
SELECT nome_cliente, numero ordini, fatturato, numero_spedizioni
FROM CLIENTI C, (
SELECT C.id_cliente, numero_ordini, SUM(totale_ordine) AS fatturato, numero_spedizioni
FROM CLIENTI C, ORDINI O, (
SELECT id_cliente, COUNT(*) AS numero_ordini
FROM ORDINI
GROUP BY id_cliente
) AS STAT_O, (
SELECT id_cliente, COUNT(*) AS numero_spedizioni
FROM SPEDIZIONI
WHERE spedizione_in_corso = true
GROUP BY id_cliente
) AS STAT_S
WHERE C.id_cliente = O.id_cliente
AND C.id_cliente = STAT_O.id_cliente
AND C.id_cliente = STAT_S.id_cliente
AND ordine_fatturato = true
AND numero_ordini = :n
GROUP BY C.id_cliente
HAVING SUM(totale_ordine) > :x
) AS STAT_C
WHERE C.id_cliente = STAT_C.id_cliente
ORDER BY numero_spedizioni, numero_ordini
:n e :x sono i due valori da verificare