SQL:
1
2
3
4
5
| SELECT col1 FROM table1 t1 INNER JOIN table2 t2 USING id INNER JOIN table3 t3 USING id ORDER BY t2.col ASC, t3.col ASC |
Het ORDER BY gedeelte gaat erg traag zodra er enkele duizenden records in de database staan. Dit is logisch, omdat de 'read_buffer_size' dan te klein is om alle records rechtstreeks vanuit het geheugen te ORDER'en en MySQL dan gebruik gaat maken van een bestand op de hdd.
De oplossing in dit geval is normaliter om indexes te plaatsen en eventueel de query uit te breiden met een USE INDEX commando. Helaas echter, zou de index in dit geval over meerdere tabellen uitgezet moeten worden. Aangezien dat niet kan, ben ik op zoek gegaan naar alternatieve oplossingen om de query toch snel te kunnen ORDER'en.
Helaas kon Google, etc. mij niet verder helpen. Iemand van jullie misschien?