Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Demande joignant les résultats de deux autres demandes avec la clause GROUP BY dans SQL Server 2005

Bien sûr, utilisez des requêtes imbriquées :

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

Ou avec la nouvelle syntaxe CTE, vous pouvez avoir :

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