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

Enumérer des combinaisons via SQL

D'après votre exemple, il semble que vous souhaitiez que la première colonne contienne n'importe quel name vient en premier par ordre alphabétique, j'ai donc utilisé un < lors de la jointure de la table à elle-même.

select count(*), t1.Name, t2.Name
from 
    tblThings t1 join
    tblThings t2 ON t1.ID = t2.ID AND t1.Name < t2.Name
group by t1.Name, t2.Name

Et voici la requête en action pour prouver que je ne suis pas fou.