Hirdetés

Új hozzászólás Aktív témák

  • rum-cajsz
    őstag

    2013-ban nem illik ilyen old school join-okat csinálni. Írd át modern sql szintaktikára:

    from egytabla t1
    join kettotabla t2 on t1.id = t2.id
    join haromtabla t3 on t1.id = t3.id

    A hiba pedig elég egyértelmű. A három tábla descartes szorzata túl sok sort adna vissza, és (shared hosting környezetben jellemzően direkt) le van korlátozva a mysql memória használata, join-ok mérete.

    Ezt elkerülni úgy tudod, hogy vagy megpróbálod átkonfigurálni a mysql-t, ha nem vagy hosting környezetben akkor ez menni fog.
    Vagy alselecteket használsz, és megpróbálod csökkenteni a join-olt táblák visszaadott sorainak számát. Erre jó lehet akár egy szigorúbb feltételes join is. Az is lehet, hogy az id kapcsolat nem jó, és ez miatt többszörőződik meg indokolatlanul a join.
    Vagy átmész egy rendes hosting-hoz, ahol nincs ilyen korlátozás.

    haha,
    Nem tudom melyik adatbázisra gondoltál, de hivatalos Oracle oktatáson mégis elhangzott (a tapasztalt Oracle szakértő szájából), hogy szép-szép az új join szintaktika, de ha biztosra akarunk menni akkor használjuk a régi módszert.... ;)

Új hozzászólás Aktív témák