Einzelnen Beitrag anzeigen
Alt 11.06.2008, 22:45  
Wolla
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.847
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard [Erledigt] Select über zwei Tabellen / Performanceproblem

Ich habe ein Performanceproblem und bin mir sicher, dass es hausgemacht ist, weiß aber nicht, wo ich ansetzen soll.

tab1: (ca. 300.000 Zeilen)

id int(10)
feld1 varchar (30)
sperre set 'ok,gesperrt'
(weitere 10 Felder)

Primary Key ist id, auf feld1 liegt ein Index.


tab2: (ca 1000 Zeilen)

feld2 varchar (30)

Index liegt auf feld2


Feld2 enthält solche Daten:
%text1%
%text2%
usw.

Die Aufgabe besteht darin, alle Zeilen in tab als 'gesperrt' zu markieren, wenn tab1.feld1 LIKE tab2.feld2 ist.

Ich kann nur mit phpmyadmin umgehen und habe dort folgenden SQL-Befehl eingegeben:

PHP-Code:
SELECT FROM tab1,tab2 WHERE feld1 LIKE feld2
mit der Idee, erstmal zu schaun ob es eine Treffermenge gibt, und dann das Statement so abzuändern:

PHP-Code:
UPDATE tab1,tab2 SET sperre='gesperrt' WHERE feld1 LIKE feld2
Bis zum Update kam ich allerdings nicht mehr, das Select-Statement habe ich nach 20 Min über die Taskliste gekillt.

Wo habe ich den Murks eingebaut?
Wolla ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten