Hirdetés

Új hozzászólás Aktív témák

  • Apollo17hu
    őstag

    Hali!

    Egy adatbázisban vannak tárolva események mindegyikhez tartozik egy szobaszám (3 és 18 között fixen), plusz egy kezdő és befejezési időpont. Arra lenne szükségem, hogy minden szintre lekérdezzem a legközelebbi jövőbeli eseményt (ha nincs ilyen, akkor null legyen).

    Elsőre arra gondoltam, hogy minden szintre futtatok egy select-et a megfelelő szűrőkkel és abból kiveszem az első rekordot, de gondoltam megkérdezem, hogy tud-e valaki ennél egy szebb megoldást?

    Van esemény, szobaszám, kezdő és befejezési időpont. Eddig oké. De mi az a szint? Az is egy külön attribútum külön mezőben? Minden mező egy adattáblában van?

    Vmi ilyesmire lesz szükséged, ahonnan a megképzett "sorrend" mezőnek veheted később a minimumát:

    RANK() OVER(PARTITION BY szint ORDER BY kezdo_idopont) AS sorrend

    Arra kell figyelni, hogy RANK() esetén több minimum is lehet, ha a sorrendiség nem egyértelmű.

Új hozzászólás Aktív témák