sql >> Database teknologi >  >> RDS >> Mysql

Optimering af MySQL-forespørgsel til søgning i heltalsområde

Hvis IP-intervallerne ikke overlapper, så forespørgslen aldrig vil returnere mere end 1 række, kan du bruge dette:

SELECT q.*
FROM 
  ( SELECT csv.* 
    FROM csv
    WHERE csv.begin < 3338456592 
    ORDER BY csv.begin DESC
    LIMIT 1
  ) AS q
WHERE 3338456592 < q.end ;

Intet indeks skal tilføjes. Det primære indeks vil blive brugt.



  1. Quickstart databasemigrering ved hjælp af Talend

  2. SQLite Node.js

  3. Fremskynd tekstsammenligninger (funktionsvektorer) med rumlige MySQL-funktioner

  4. MySQL VÆLG MIN for alle tider, men returner kun hvis MELLEM datoer