My double Inner Join sql query takes very long (>60 seconds). Anything I did wrong here? How can I improve it?
SELECT coasters.coaster_name, coaster_models.model_id, models.model_name
FROM coasters
INNER JOIN coaster_models ON coasters.coaster_id = coaster_models.coaster_id
INNER JOIN models ON coaster_models.model_id = models.model_id
WHERE models.model_name = "SLC"
I just made this statement and now it shows 8 entrys or more for something that is just a single coaster.
SELECT coasters.coaster_name, manufacturers.manufacturer_name FROM coasters INNER JOIN coaster_models ON coasters.coaster_id = coaster_models.coaster_id INNER JOIN models ON coaster_models.model_id = models.model_id INNER JOIN manufacturers ON models.manufacturer_id = manufacturers.manufacturer_id WHERE manufacturers.manufacturer_name = "Vekoma"
Output:
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Abyssus | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
Accelerator | Vekoma
etc...
be sure you have proper composite (and someway rendendat) indexes on
table coaster column coaster_id, coaster_name
table coaster_models column coaster_id, model_id
table models model_name, model_id,