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

Gruppér efter sql-forespørgsel på kolonne med kommaer

En SQL Server-løsning

WITH T ([Data], [Mail])
     AS (SELECT 1,'[email protected],[email protected]' UNION ALL
         SELECT 2,'[email protected],[email protected]')
SELECT address  AS Mail,
       COUNT(*) AS [Count]
FROM   T
       CROSS APPLY (SELECT CAST('<m>' + REPLACE([Mail], ',', '</m><m>') + '</m>'
                                AS XML
                           ) AS x) ca1
       CROSS APPLY (SELECT T.split.value('.', 'varchar(200)') AS address
                    FROM   x.nodes('/m') T(split)) ca
GROUP  BY address  


  1. DateTimeField modtog et naivt datetime

  2. Kan du løse denne simple SQL-forespørgsel?

  3. OPTION (GENKOMPILER) er altid hurtigere; Hvorfor?

  4. Postgres Venstre Sammenføj med hvor tilstand