Je peux sélectionner toutes les valeurs distinctes dans une colonne des manières suivantes:
SELECT DISTINCT column_name FROM table_name;
SELECT column_name FROM table_name GROUP BY column_name;
Mais comment puis-je obtenir le nombre de lignes de cette requête? Une sous-requête est-elle requise?
Vous pouvez utiliser le mot clé DISTINCT
dans la fonction COUNT
aggreg:
SELECT COUNT(DISTINCT column_name) AS some_alias FROM table_name
Cela ne comptera que les valeurs distinctes pour cette colonne.
Cela vous donnera à la fois les valeurs de colonne distinctes et le nombre de chaque valeur. Je trouve généralement que je veux connaître les deux informations.
select distinct columnName, count(columnName) as CountOf from tableName group by columnName
Sachez que Count () ignore les valeurs null. Par conséquent, si vous devez autoriser la valeur null en tant que valeur distincte, vous pouvez effectuer quelque chose de délicat, comme par exemple:
select count(distinct my_col)
+ count(distinct Case when my_col is null then 1 else null end)
from my_table
/
SELECT COUNT(DISTINCT column_name) FROM table as column_name_count;
vous devez compter ce col distinct, puis lui donner un alias.
Une somme sql des valeurs uniques de column_name et triée par fréquence:
SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name ORDER BY 2 DESC;
select count(*) from
(
SELECT distinct column1,column2,column3,column4 FROM abcd
) T
Cela donnera le compte du groupe distinct de colonnes.
select Count(distinct columnName) as columnNameCount from tableName
select count(distinct(column_name)) AS columndatacount from table_name where somecondition=true
Vous pouvez utiliser cette requête pour compter des données différentes/distinctes. Merci
**
En suivant SQL, nous pouvons obtenir le nombre de valeurs de colonne distinct dans. Oracle 11g.
**
Select count(distinct(Column_Name)) from TableName