Sortieren nach einem Feld in einer 2. Tabelle

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

  • Sortieren nach einem Feld in einer 2. Tabelle

    Hallo

    Ist es möglich nach einem Feld in einer 2. Tabelle zu sortieren?

    $sql = "SELECT bnr, firma, strasse, ort, stichwort1, stichwort2, gueltigkeit, ort FROM branchenregister WHERE online = 'J' ORDER BY ???, prioritaet, firma";

    Da wo ??? steht, müsste man auf die Tabelle orte zugreifen und das Feld ortschaft. Ist das überhaupt möglich?

    PHP Version 5.2.6 und MySQL

    Gruss
    Borsi

  • #2
    Code:
    SELECT 
      b.bnr, 
      b.firma, 
      b.strasse, 
      b.ort, 
      b.stichwort1, 
      b.stichwort2, 
      b.gueltigkeit
    FROM 
      branchenregister b,
      orte o
    WHERE b.online = 'J'
      AND b.ort = o.ortschaft # das hier ist geraten
    ORDER BY o.ortschaft, b.prioritaet, b.firma
    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Hallo Kropff

      ... und funktioniert perfekt. Schon wieder was gelernt.

      Vielen herzlichen Dank!!!

      Kommentar


      • #4
        Ein anderer Lösungsweg:
        Code:
        SELECT
            b.bnr,
            b.firma,
            b.strasse,
            b.ort,
            b.stichwort1, 
            b.stichwort2,
            b.gueltigkeit
        FROM
            branchenregister b
        JOIN orte o ON o.ortschaft=b.ort # das hier ist geraten 
        WHERE b.online = 'J' 
        ORDER BY o.ortschaft, b.prioritaet, b.firma
        Vorteil hierbei ist, dass durch den JOIN schon die passenden Datensätze (hier Ort bzw Ortschaft) vorgefiltert werden, um dann anschliessend mit der weiteren Bedingung eingegrenzt zu werden.
        Bitte daran denken, dass bei bedingten Abfragen die für den Vergleich benötigten Spalten indiziert sein sollten, um eine gute Performance zu haben.

        Kommentar

        Lädt...
        X