Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Richiedi l'unione dei risultati di altre due richieste con la clausola GROUP BY in SQL Server 2005

Certo, usa le query nidificate:

select *
from (select count(*) as delivery_count, clientid 
      from deliveries group by clientid) AS view1
inner join (select count(*) as action_count, clientid
            from routeactions group by clientid) AS view2
    on view1.clientid = view2.clientid

Oppure con la nuova sintassi CTE puoi avere:

WITH view1 AS (
    select count(*) as delivery_count, clientid from deliveries group by clientid
), view2 AS (
    select count(*) as action_count, clientid from routeactions group by clientid
)
select * from view1 inner join view2 on view1.clientid = view2.clientid