Announcement

Collapse
No announcement yet.

Immer bestimmte Anzahl an Ergebnissen

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

  • Immer bestimmte Anzahl an Ergebnissen

    Hallo,
    Ich beiss mir gerade an einem Problem die Zähne aus und zwar möchte ich immer 7 Ergebnisse erhalten. 3 vor einer bestimmten ID und 3 nach der ID.
    Die Tabelle ist sortiert nach einem Rank. Die ID ist leider das einzige was ich immer weiß.

    Also hier nochmal grafisch:

    Name------ID---------Rank
    Zeile1------3234-------1
    Zeile2------123---------2
    Zeile3------3523-------3 -|
    Zeile4------42----------4 |
    Zeile5------234---------5 |
    Zeile6------2323--------6 |------- Gesuchte ID =2323
    Zeile7------12-----------7 |
    Zeile8------324---------8 |
    Zeile9------23-----------9 -|
    Zeile10-----324-------10

    Ich hoffe ihr könnt mir weiter helfen...
    mfg
    Moritz
    Zuletzt editiert von Samiboy; 05.03.2011, 14:01.

  • #2
    Da wäre es gut zu wissen, welche Datenbank in welcher Version vewrwendet wird.

    bye,
    Helmut

    Comment


    • #3
      Ohne konkrete Syntax:

      Jeweils eine sortierte Query mit Angabe ID > 2323 und einmal mit ID <= 2323 und per Limit/Top auf 3 bzw. 4 Ergebnissätze beschränkt. Das ergebnis dann mit einer UNION zusammengefügt.

      Comment


      • #4
        Kurz zur DB: ich hoste auf bplaced:
        Server: bplaced MySQL-Database Interface (Localhost via UNIX socket)
        Server Version: 5.1.50
        Protokoll-Version: 10

        So, kurz zur Lösung von Bernhard Geyer:
        Das geht leider nicht, da die ID's keine richtige Reinfolge haben. Es wird nach dem Rank sortiert, den weis ich aber bei der Abfrage nicht.
        An dem Rank kann man sich leider auch nicht wirklich orientieren, da die Abstände sehr stark variieren.

        Comment


        • #5
          Kann dir zwar bei MySQL nicht direkt weiterhelfen, aber vielleicht kannst du den anderen mal erklären, warum du bei der Abfrage nicht weißt, dass nach dem Rank sortiert wird - nach was aber dann, irgendeine Sortierung wird es doch geben?
          Und was heißt bitte, dass man sich auf den Rank nicht verlassen kann, da die Abstände so stark variieren? Erstens zeigst du in deinen Beispieldaten nichts davon und zweitens, warum spielt das eine Rolle? Wenn man Daten nach der where-Klausel nach dem Rank sortiert und dann davon die ersten oder die letzten 3 nimmt, dann spielt der Abstand zwischen den Werten ja überhaupt keine Rolle?

          bye,
          Helmut

          Comment

          Working...
          X