Dit speelt me nu al een tijdje parten dus hoop ik dat iemand van jullie een goede oplossing weet.
Ik werk met Ubuntu 7.04, Mysql 5 en PHP 5.5.
Ik heb in mysql een tabel met een lijst van emailadressen, deze telt +/- 150000 rijen. (Tabel A)
Daarnaast heb ik nog 4 andere tabellen die ook een textveld emailadres hebben. (Tabel B )
De vier tabellen (Tabel B ) bevatten tussen 1200 en 600 000 rijen.
Nu ben ik op zoek naar een manier om snel de gemeenschappelijke adressen te vinden tussen Tabel A en één van de andere tabellen uit B.
Nu wil ik een query uitvoeren waarin ik de lijst van emailadressen terugkrijg die in beide tabellen voorkomen.
Als ik deze Query gebruik:
Deze Query duurt 35 seconden bij wanneer ik voor Tabel B een tabel gebruik met maar 1200 rijen. Ik wil niet weten hoe lang het zal duren wanneer ik voor Tabel B een tabel gebruik met 600000 rijen...
Iemand een idee hoe ik dit zou moeten aanpakken? zou mysql full-text indexing hierbij helpen en een drastisch verschil geven? Ik heb ook al naar UNION's en VIEWs gekeken maar ik zie niet direct hoe deze hier mij kunnen bij helpen...
Ik werk met Ubuntu 7.04, Mysql 5 en PHP 5.5.
Ik heb in mysql een tabel met een lijst van emailadressen, deze telt +/- 150000 rijen. (Tabel A)
Daarnaast heb ik nog 4 andere tabellen die ook een textveld emailadres hebben. (Tabel B )
De vier tabellen (Tabel B ) bevatten tussen 1200 en 600 000 rijen.
Nu ben ik op zoek naar een manier om snel de gemeenschappelijke adressen te vinden tussen Tabel A en één van de andere tabellen uit B.
Nu wil ik een query uitvoeren waarin ik de lijst van emailadressen terugkrijg die in beide tabellen voorkomen.
Als ik deze Query gebruik:
code:
1
2
3
| SELECT a.email FROM tabela a, tabelb b WHERE a.email = b.email |
Deze Query duurt 35 seconden bij wanneer ik voor Tabel B een tabel gebruik met maar 1200 rijen. Ik wil niet weten hoe lang het zal duren wanneer ik voor Tabel B een tabel gebruik met 600000 rijen...
Iemand een idee hoe ik dit zou moeten aanpakken? zou mysql full-text indexing hierbij helpen en een drastisch verschil geven? Ik heb ook al naar UNION's en VIEWs gekeken maar ik zie niet direct hoe deze hier mij kunnen bij helpen...
http://www.tweakers.net/gallery/sys/2314