sql >> Database >  >> RDS >> Mysql

Hoe kan ik een aangrenzende rij in sql selecteren wanneer ik door een ander veld bestel?

Als likes unieke nummers zijn, zou het volgende moeten werken.

vorige:

SELECT * FROM table WHERE likes < (SELECT likes FROM table WHERE id = ID) ORDER BY likes DESC LIMIT 1

volgende:

SELECT * FROM table WHERE likes > (SELECT likes FROM table WHERE id = ID) ORDER BY likes ASC LIMIT 1

U kunt er 1 wijzigen in <=of>=en WHERE id != ID toevoegen



  1. Is er een tijdelijke oplossing voor het definiëren van een unieke beperking die NULL-waarden als niet-onderscheiden behandelt?

  2. Mysql-indexconfiguratie

  3. Hoofdlettergevoelig zoeken in Django, maar genegeerd in Mysql

  4. SQL Server-index opnieuw opbouwen en reorganiseren