sql >> Database >  >> RDS >> PostgreSQL

Hoe kan ik aangrenzende rijen selecteren op een willekeurige rij (in sql of postgresql)?

Er zijn veel manieren om dit te doen als u twee query's uitvoert met een programmeertaal, maar hier is een manier om het in één SQL-query te doen:

(SELECT * FROM table WHERE id >= 34 AND active = 1 ORDER BY id ASC LIMIT 6)
UNION
(SELECT * FROM table WHERE id < 34 AND active = 1 ORDER BY id DESC LIMIT 5)
ORDER BY id ASC

Dit zou de 5 rijen hierboven, de doelrij en 5 rijen eronder opleveren.



  1. Ontdek aan welke partitie een bepaalde waarde zou worden toegewezen in SQL Server (T-SQL)

  2. PG COPY-fout:ongeldige invoersyntaxis voor geheel getal

  3. Een vastgelegde transactie terugdraaien

  4. Wat is SQLite?