venty: Fragen zur auslese aus MySQL-Tabellen

Erst mal "Hi",

aber dann gleich los:

Ich würde gerne aus meiner MySQL-Tabelle ein paar einträge von Nutzern auslesen. Jetzt weiß ich aber nur wie ich alle User oder nur einen auslesen kann, nicht aber wie ich alle User nur ohne doppelte Einträge auslesen kann :(

Also nicht:
User1
User1
User2
User3
User3

Sondern einfach:
User1
User2
User3
etc ...

Dann würde ich gerne wissen wie ich am besten eine Suchfunktion bastle die unabhängig von der Groß- und Kleinschreibung sucht...

Mfg Venty

  1. Hi!

    Ich würde gerne aus meiner MySQL-Tabelle ein paar einträge von Nutzern auslesen. Jetzt weiß ich aber nur wie ich alle User oder nur einen auslesen kann, nicht aber wie ich alle User nur ohne doppelte Einträge auslesen kann :(

    SELECT DISTINCT user FROM ...

    Mir scheint aber, dass dein Datenformat verbesserungswürdig (normalisierungswürdig) sein könnte. Dann treten solche Redundanzen nicht auf. Aber ein genaueres Urteil kann man sich da erst nach Kenntnis aller Umstände leisten.

    Lo!

    1. Hi

      SELECT DISTINCT user FROM ...

      Das hab ich gesucht danke ^^

      und was ist mit der suchfunktion? kennt da jem ein nützliches beispiel?

      Mfg Venty

      1. Hi!

        und was ist mit der suchfunktion? kennt da jem ein nützliches beispiel?

        Ach, das hatte ich überlesen. MySQL vergleicht normalerweise ohne Berücksichtigung der Groß- und Kleinschreibung. Die Vergleichsregeln werden durch die Kollationsangabe des betreffenden Feldes (Feld! nicht Tabelle oder Datenbank) festgelegt oder durch eine angehängte COLLATE-Klausel, wenn man die vom Feld vorgegebene überschreiben will. Diese Kollationsangabe (z.B. latin1_german2_ci oder utf8_general_ci) besteht aus drei Teilen: der Kodierungsangabe (z.B. latin1 oder utf8), dem Namen für die Sortierregel (z.B. german2 oder general) und einem Anhängsel, das die Case Sensitivity angibt. Letzeres ist meist ci (case insensitiv) und recht selten als cs (case sensitive) zu haben. Außerdem gibt es noch die zweiteilige Variante die auf bin endet, bei der zangsläufig auch die Groß-/Kleinschreibung unterschieden wird.

        Wenn du nur zeitweilig exakt vergleichen willst, kannst du den BINARY-Operator voranstellen. Ansonsten empfiehlt es sich die Kollation gleich passend einzustellen, für Passwortfelder *_bin, für normalen Text latin1_german1/2_ci oder utf8_general_ci oder utf8_unicode_ci.

        Lo!