2011-04-30 3 views
0

j'ai données comme ceci:Sélectionnez les lignes en double

| col1 | 
-------- 
| 1 | 
| 2 | 
| 1 | 
| 2 | 
| 1 | 
| 2 | 
| 1 | 
| 2 | 
| 1 | 
| 2 | 

Comment puis-je obtenir comme celui-ci et de l'ordre par Max Min:

| col1 | 
-------- 
| 2 | 
| 1 | 

J'essaie ceci:

SELECT col1 , count(col1) FROM myTable GROUP BY col1 

Mais j'ai obtenu des résultats étranges

Répondre

2

Si vous souhaitez commander par le nombre d'occurences de chaque valeur:

SELECT col1, count(1) FROM myTable GROUP BY col1 ORDER BY count(1) DESC 

Si vous souhaitez commander par la valeur réelle contenue dans col1

SELECT DISTINCT col1 FROM myTable ORDER BY col1 DESC 
+0

C'est ce que je voulais: d –

1

Vous pouvez utiliser e SQL DISTINCT mot-clé pour afficher uniquement les résultats uniques.

SELECT DISTINCT col1 FROM myTable; 

Vous pouvez ensuite trier par cette colonne.

SELECT DISTINCT col1 FROM myTable ORDER BY col1 DESC; 
+0

Code Bon mais je pas besoin de lui, répondre 2 est mon but ultime :) –

Questions connexes