sql >> Databasteknik >  >> RDS >> Sqlserver

Hur lägger man till XML-datatyp i en GROUP BY-sats?

Du kan göra aggregeringen i en CTE och sedan gå med på det

WITH Children(Cnt, ParentId)
     AS (SELECT COUNT(*),
                ParentId
         FROM   dbo.Post
         GROUP  BY ParentId)
SELECT P.PostId,
       P.[Body],
       ISNULL(Cnt, 0) AS Cnt
FROM   dbo.Post P
       LEFT JOIN Children /*To include childless posts*/
         ON Children.ParentId = P.PostId
ORDER  BY P.PostId  


  1. Effektiv fråga, tabellbrygga/indexering och struktur

  2. Varför fungerar det annorlunda med ~~ any()?

  3. MySQL 1062 - Duplicera post '0' för nyckel 'PRIMÄR'

  4. Dålig prestanda att få clob-fält från Oracle i .Net