Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Optimierung für Join-Tabellen mit Bereichskriterien

chrom_only ist wahrscheinlich eine schlechte Indexauswahl für Ihren Join, da Sie nur Chrom 22-Werte haben.

Wenn ich das richtig interpretiert habe, sollte die Abfrage schneller sein, wenn start_end verwendet wird

SELECT `inVar`.chrom, `inVar`.pos, `openChrom_K562`.score
FROM `inVar`
LEFT JOIN `openChrom_K562`
USE INDEX (`start_end`)
ON (
`inVar`.chrom=`openChrom_K562`.chrom AND
`inVar`.pos BETWEEN `openChrom_K562`.chromStart AND `openChrom_K562`.chromEnd
)