Having è la strada da percorrere…
Solo qualche perplessità:
SELECT * FROM clienti AS U WHERE (U.ingressi) In (SELECT ingressi, COUNT(ingressi) AS Numero FROM clienti HAVING Numero > 2) LIMIT 3,1
Perché parti da clienti?
Credo che a popolarsi sia la tabella ingressi…
Prova ad inserire having nella prima query che hai mostrato.
Questa:
select DATEPART(WEEKDAY,[DataIngresso]) orario, count(*) numIngressi, count (distinct clienti) clienti
from [dbo].[INGRESSI]
where clienti in (
select clienti
from (
Select clienti, count(*) numIngressi from [dbo].[INGRESSI] group by clienti
) tmptab
where numingressi > 2
)
group by DATEPART(WEEKDAY,[DataIngresso]) order by DATEPART(hour,[DataIngresso])
Non conosco i campi delle tabelle ma se ti mostra gli ingressi maggiori di 2 aggiungi having (condizione) dopo group by e vedi che succede.