I have multiple views in my database that I am trying to perform a JOIN on when certain queries get very complex. As a worst case I would have to join 3 views with the following stats:

* View 1 has 60K+ rows with 26 fields.
* View 2 has 60K+ rows with 15 fields.
* View 3 has 80K+ rows with 8 fields.

Joining views 1 and 2 seem to be no problem, but anytime I try to join the third view the query hangs. I'm wondering if there are any best practices I should be following to keep these querys from hanging. I've tried to use the smallest fields possible (medium/small ints where possible, ect).

We are using MySQL 5.0.92 community edition with MyISAM tables. Not sure if InnoDB would be more efficient.

As a last resort I thinking of splitting the one query into two, hitting views 1 & 2 with the first query, and then view 3 separately with the 3rd. Is there any downside to this other than making 2 queries?

Thanks.