1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

[MySQL-Gefrickel] - Abfrage mit SELECT IF | Datensätze zusammenfassen

Dieses Thema im Forum "PHP & Co." wurde erstellt von drok, 10.02.08.

  1. drok

    drok Klarapfel

    Dabei seit:
    02.06.07
    Beiträge:
    278
    Huhu,

    folgende Sache: In mehreren Tabellen sollen die Inhalte des Feldes 'name' mit einem Suchbegriff verglichen und ausgelesen werden. (Alle Tabellen sind von der Struktur her identisch)

    t1,2,3,..
    +----+--------+
    | ID | name |
    +----+--------+

    Ich habe einiges ausprobiert und bin gerade bei folgendem Code gelandet:
    (Wäre toll wenn mir jemand sagen könnte ob das so i.O. ist oder ob das total umständlich und unschön ist.)

    Code:
    $sql="(SELECT IF((t1.name LIKE '".$listsearch."%')>0, t1.name, NULL) FROM t1) UNION 
             (SELECT IF((t2.name LIKE '".$listsearch."%')>0, t2.name, NULL) FROM t2) ... ";
    Das funktioniert soweit einwandfrei, nur hätte ich die Namen gerne sortiert.

    Könnte man jetzt irgendwie diese Daten innerhalb des Querys zu einem virtuellen Feld zusammenfassen und das Feld dann mit ORDER BY behandeln ?



    viele grüße,
    drok
     
    #1 drok, 10.02.08
    Zuletzt bearbeitet: 12.02.08
  2. drok

    drok Klarapfel

    Dabei seit:
    02.06.07
    Beiträge:
    278
    Niemand da der etwas darüber sagen kann ?
     
  3. tfc

    tfc Ontario

    Dabei seit:
    21.07.07
    Beiträge:
    348
    Mach einen VIEW draus. Das ist quasi eine Tabelle, die als Stellvertreter für eine "echte Tabelle", die nicht existiert, ihre Daten aus einem komplexen Query holt.
     

Diese Seite empfehlen