Jegyzet magamnak

Ha legközelebb felmerül a kérdés, hogy PostgreSQL vagy MySQL, egyértelműen az előbbi.
Utóbbi kicsit lomhán kezeli a joinjaimat.

Hozzászólások

Megmutatod a selectet és a két explain plant? Csak kíváncsi vagyok.

MySQL:

1 PRIMARY ALL [NULL] [NULL] [NULL] [NULL] 662107 Using temporary; Using filesort
1 PRIMARY receiver ALL cfscycles,cfecycles [NULL] [NULL] [NULL] 2057 Range checked for each record (index map: 0x3)
2 DERIVED comm ALL cchannel [NULL] [NULL] [NULL] 614472 Using where
2 DERIVED sender ALL cfscycles,cfecycles [NULL] [NULL] [NULL] 2057

CTE-t lehet referenciaként használni, olvashatóbb, karban tarthatóbb és rekurzív szelekteknél használható jól. Ennél már csak a temptábla jobb, amire indexet is tehetsz, de az már a "kicsit értek hozzá" mesgye, nagyon veszélyes. :)

Volt nekem 2-300 soros select-szörnyem és CTE-vel valamiért gyorsabb lett, kb 30%-a lett a futásidő az eredetinek..

A MySQL-nel szerintem a nested select a problema, azt nagyon nem szokta szeretni. Ha azt elhagyod, akkor is lassu?
--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. 

Akkor nincs értelme a lekérdezésemnek :-)

Komolyra fordítva: lehet, volna értelme megnézni, ha nagyon ráérek, kipróbálom.
Egyelőre kiválóan megy Postgres-sel, és feltételezhetően lesz olyan rész, amihez meg ígyis-úgyis az fog kelleni, mert a MySQL nem támogatja az adott funkciót.