SQL για την εύρεση του αριθμού των διαφορετικών τιμών σε μια στήλη

Μπορώ να επιλέξω όλες τις ξεχωριστές τιμές σε μια στήλη με τους ακόλουθους τρόπους:

  • SELECT DISTINCT column_name FROM table_name;
  • SELECT column_name FROM table_name GROUP BY column_name;

Αλλά πώς μπορώ να πάρω τον αριθμό των γραμμών από αυτό το ερώτημα; Απαιτείται ένα υποερώτημα;

Λύση

Μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί DISTINCT εντός της συνάρτησης αθροίσματος COUNT:

SELECT COUNT(DISTINCT column_name) AS some_alias FROM table_name

Αυτό θα μετρήσει μόνο τις διακριτές τιμές για τη συγκεκριμένη στήλη.

Σχόλια (5)
SELECT COUNT(DISTINCT column_name) FROM table as column_name_count;

πρέπει να μετρήσετε αυτό το ξεχωριστό col, και στη συνέχεια να του δώσετε ένα ψευδώνυμο.

Σχόλια (0)
select Count(distinct columnName) as columnNameCount from tableName 
Σχόλια (0)