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

Ottimizzazione della query MySQL per la ricerca di intervalli di interi

Se gli intervalli IP non si sovrappongono, quindi la query non restituirà mai più di 1 riga, puoi utilizzare questo:

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

Non è necessario aggiungere alcun indice. Verrà utilizzato l'indice principale.