9
votes

Groupe SQL par nombre de comptes

Ceci est mon script

2 ---550
3 ---545


2 commentaires

Quels sont vos résultats souhaités? (550,2), (545,3) ?


@Martinsmith oui, je modifie la question


3 Réponses :


17
votes
SELECT [Count Of Register], COUNT(1) [Grouped Count]
FROM
(
    SELECT COUNT( [Id]) as [Count Of Register],
           Tag as [Tag]
    FROM [Members]
    Group By Tag 

) MyTable
GROUP BY [Count Of Register]

2 commentaires

Il y a une erreur: msg 1033, niveau 15, état 1, ligne 19 La commande par clause n'est pas valide dans des vues, des fonctions en ligne, des tables dérivées, des sous-requêtes et des expressions de table communes, à moins que le sommet ou pour XML soit également spécifié.


D'Oh, Ouais, désolé pour ça, vous ne pouvez pas utiliser la commande dans une requête intérieure! Échantillon fixe.



1
votes

Vous pouvez utiliser

SELECT [Count Of Register], COUNT(*) FROM
    (SELECT COUNT([Id]) as [Count Of Register], Tag as [Tag]
     FROM [Members] GROUP BY Tag) q
GROUP BY [Count Of Register]


1 commentaires

Il y a une erreur: nom de colonne invalide 'tag'. pour le compte (tag)



-1
votes

mySQL> Créer un ordre de table1 (compteur int (3) NON NULL Auto_incrimentation Touche primaire, -> tag int (3)); Requête OK, 0 rangées touchées (0,01 sec)

mySQL> insérer dans la commande1 valeurs (500,20); // Insérer des valeurs somany comme vous avez besoin et vérifiez insérer dans la commande1 valeurs (500,20); insérer dans la commande1 valeurs (600,20); MySQL> Sélectionnez Compteur, Count (*) à partir de commander1 Group par compteur


0 commentaires