sql >> Database teknologi >  >> RDS >> PostgreSQL

SQL-forespørgsel til paginering med flere kolonner; forstå OR-operatør

Formålet med OR - som du har mistanke om - er at håndtere sagen, hvor der er ligheder i scoringerne. Ideen er at lave en stabil sortering ved at inkludere id , så det her får alt efter (score, id) .

Formentlig de værdier, der bruges til score og id er de sidst sete værdier (sandsynligvis på forrige side, men det er spekulationer).

En "stabil" sortering er en, der returnerer rækkerne i samme rækkefølge, hver gang den anvendes. Fordi SQL-tabeller repræsenterer uordnet sæt, bindinger indebærer en ustabil sortere. Inklusive id gør det stabilt (forudsat at id er unik.

Postgres understøtter faktisk en simper-syntaks:

where (score, id) > (11266, 4482)

Bemærk, at jeg også fjernede de enkelte citater. Værdierne ligner tal, så de skal behandles som tal og ikke strenge.




  1. Bruger du en PHP-sessionsvariabel i en MySQL-fil, der køres i PHP?

  2. Sideinddeling ved hjælp af PDO med MySQL

  3. Hvordan importerer man tabel fra MySQL til Hive ved hjælp af Java?

  4. Låsning af en række i en MYSQL-tabel under en transaktion