Sortierungsfrage mit JOIN

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Sortierungsfrage mit JOIN

    Hallo!

    ich habe folgendes Anliegen

    ich habe 2 Tabellen:

    Tankstelle und Preise

    tank_id
    ...
    tank_update

    preis_id
    preis_update
    preis_type
    preis_wert (z.B. 1.23)

    nun mache folgende Abrage:
    Code:
    SELECT * FROM tankstellen 
    LEFT JOIN preise ON preis_tank = tank_id 
    WHERE preis_type = '1' 
    AND tank_land = '".@$_GET['land']."' 
    AND ((`tank_stadt` LIKE '%".@$_GET['such']."%') 
    OR (`tank_plz` LIKE '%".@$_GET['such']."%')) 
    GROUP BY tank_id 
    ORDER BY preis_wert DESC 
    LIMIT 0, 30
    hierbei sortiert er nach den Werten. Ich will aber erreichen, dass er auch nach dem update (UNIX_TIMESTAMP) sortiert. D.h. wenn ein preis zwar niedriger ist, aber das Update datum länger her ist, soll der höhere aber aktuelle preis über dem 1. sortiert werden. Geht das SQL technisch überhaupt?
    Beachte: Dumm ist, wer Dummes tut.

  • #2
    grundsätzlich - ja.
    Code:
    ... ORDER BY `spalteA`, `spalteB`

    Comment


    • #3
      und wie sortiert er dann?

      welche spalte ist dann "wichtiger" zur Sortierung? etwas zu beachten?
      Beachte: Dumm ist, wer Dummes tut.

      Comment


      • #4
        spalteA - erstes sortierkriterium (in deinem fall datum), spalteB - zweites (preis).

        zu beachten ist der unterschied zwischen ASC und DESC.

        Comment


        • #5
          Vielen Dank! Problem gelöst, da mein Datum in UNIX TIMESTAMP vorliegt habe ich einfach FROM_UNIXTIME(preis_update, "%Y-%m.%d") AS datum und dann ORDER BY datum DESC, preis_wert ASC.

          Problem kann also als gelöst angesehen werden!
          Beachte: Dumm ist, wer Dummes tut.

          Comment

          Working...
          X