sql >> Database >  >> RDS >> Mysql

SQL-venster selecteren rond bepaalde rij

Waarschijnlijk zou je gewoon een UNION kunnen gebruiken en dan de extra resultaten in de procedurele code die de resultaten weergeeft wegknippen (omdat dit 20 rijen oplevert in de niet-randgevallen):

(SELECT 
     * 
FROM photos
   WHERE ID < #current_id#
   ORDER BY ID DESC LIMIT 10)
UNION
  (SELECT *
   FROM photos
   WHERE ID >= #current_id#
   ORDER BY ID ASC LIMIT 10)
ORDER BY ID ASC

EDIT:Verhoogde limiet tot 10 aan beide zijden van de UNIE, zoals voorgesteld door le dorfier .

EDIT 2:Aangepast om de uiteindelijke implementatie beter weer te geven, zoals voorgesteld door Dominic.



  1. Lengte van tabelcommentaar in MySQL

  2. Ontdek collatie van een MySQL-kolom

  3. MySQL Workbench toont resultaten als BLOB

  4. MySql Count kan geen 0 waarden weergeven