2016-04-06 2 views
1

Wenn ich eine Tabelle wie folgt:Wie viele verschiedene Wörter gibt es in einer Spalte in sql?

  • Apfel
  • orange
  • Birne
  • Birne
  • orange

Wie zeige ich, wie viele verschiedene Wörter gibt es? In diesem Beispiel wäre es drei:

  1. Apfel
  2. orange
  3. Pear
+1

Tipp schreiben müssen: 'Gruppe by' oder' wählen distinct'. –

+0

Wenn ich es verstanden habe, wollen Sie ein SQL, um die verschiedenen Früchte zu zählen. –

+0

Können Sie mir bitte ein Beispiel zeigen, wie bestimmte discept verwendet werden? @GordonLinoff –

Antwort

3
SELECT COUNT(DISTINCT column_name) AS some_alias FROM table_name 
+0

Wenn ich "Äpfel, Orangen" in einer Reihe hatte. Wäre es möglich, die Früchte in zwei Kommas aufzuteilen? –

+0

Nun, Sie können das nicht mit der obigen Abfrage tun, da es nach der ganzen Zeichenfolge "Äpfel, Orangen" suchen wird. Vielleicht können Sie eine Vorverarbeitung durchführen, bevor Sie die Abfrage ausführen? –

1
  1. die nicht zu bekommen. Von Diff-Wörtern können Sie entweder group by oder distinct verwenden. select words_column_name, count(words_column_name) as no_of_repetation from table_name group by words_column_name. oder nur select distinct(words_column_name) from table_name

2.To teilen das Wort, es gibt keine in Build-Funktion ist, aber Sie können es mit substring() &() finden. wie:

SUBSTRING_INDEX(SUBSTRING_INDEX(fullword, ',', 1), ',', -1) AS first_fruit, 
    TRIM(SUBSTR(fullname, LOCATE(',', fullword))) AS last_fruit 

Aber dies gilt nur für 2 Frucht-Kombination, für mehr Sie einige PHP-Skript oder MySQL-Funktion

Verwandte Themen