Kardinalität

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Kardinalität

    Hallo zusammen,

    ich bräuchte mal ein wenig Unterstützung in Sachen Kardinalität und der korrekten Definition eines Indizes.

    Ich dachte bisher, ich hätte es begriffen, aber wenn dem so wäre, würde eine Abfrage, an der ich gerade hänge, nicht so träge sein.

    Daher bitte ich darum, mit kurz zu sagen, ob ich hier ein Verständnisproblem habe.

    Angenommen, in meiner WHERE Clause befinden sich 5 Felder, nach denen ich suche.

    Feld_1: rund 40.000 verschiedene Werte in Tabelle
    Feld_2: rund 4.000 verschiedene Werte
    Feld_3: rund 4.000
    Feld_4: rund 80
    Feld_5: rund 60


    Alle Suchfelder befinden sich in der gleichen Tabelle.

    Aufgrund meiner Recherchen war ich bisher der Meinung, man legt die Reihenfolge absteigend der Felder im Index in der Reihenfolge nach der Anzahl verschiedener Werte fest.

    Die oben genannte Anzahl der versch. Werte habe ich mit folgender Syntax ermittelt:

    SELECT feld,COUNT(feld) as anzahl FROM `tabelle` GROUP BY feld;

    EXPLAIN sagt, dass er den Index auch verwendet hat, daher gehe ich davon aus, dass ich oben genannte Vorgehensweise falsch angewendet habe.

    Hat jemand einen Rat?

    Viele Grüße
    Boris
Lädt...
X