sql >> Database >  >> RDS >> Mysql

Mysql-partitionering en joins

Gepartitioneerde tabellen kunnen worden gebruikt in joins.

Tweak de where clausule om slechts één partitie op te nemen voor de beste prestaties.
e.g. als je partities maakt op jaar, kun je een join doen zoals:

select * from a
inner join partioned_table p on (p.id = a.id)
where p.year = '2011';

Deze query werkt met en zonder de where-component, maar met de where-component zal het veel sneller zijn omdat u maar één partitie gebruikt.
Als u toegang heeft tot meer partities, moet MySQL een tijdelijke tabel gebruiken om de partities te stitchen samen voordat het de samenvoeging kan doen.
Dit soort verslaat het doel van partities.



  1. mysql aggregaat UDF (door de gebruiker gedefinieerde functie) in C

  2. Verborgen functies in Oracle

  3. Een complexe MySQL-query schrijven

  4. Mysql DateTime groep met 15 minuten