MySql-Hilfe: Umfragen aus Themen selektieren

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

MySql-Hilfe: Umfragen aus Themen selektieren

Beitrag von Seether »

Hallo,

folgendes möchte ich machen:
Die Themen, die eine Umfrage enthalten, bei denen der User noch nicht abgestimmt hat, sollen selektiert werden.
Ich mache dies im Moment so:


Erstmal gucken wo er schon abgestimmt hat

Code: Alles auswählen

SELECT p.topic_id
FROM phpbb3_poll_votes p
LEFT JOIN phpbb3_topics t
ON t.topic_id = p.topic_id
WHERE vote_user_id = {USER_ID}
AND t.topic_time > 1210412205
GROUP BY topic_id
LIMIT 5
Danach dann noch eine Abfrage

Code: Alles auswählen

SELECT poll_title,topic_id,forum_id
FROM phpbb3_topics
WHERE topic_id NOT IN ({IDS})
AND poll_title != ''
AND topic_time > 1210412205
LIMIT 5
Die erste Abfrage ist vernachlässigbar, aber die zweite dauert über eine halbe Sekunde. Kann man das irgendwie tunen?

S.
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Ich vermute mal, dass der Filter nach poll_title der Zeitkiller ist. Setzt auf das Feld mal testweise einen Index.

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Seether
Mitglied
Beiträge: 1446
Registriert: 10.10.2002 23:42

Beitrag von Seether »

PhilippK hat geschrieben:Ich vermute mal, dass der Filter nach poll_title der Zeitkiller ist. Setzt auf das Feld mal testweise einen Index.
Ja, auf den ersten und zweiten Blick scheint das die Sache erheblich beschleunigt zu haben.

Welche negativen Auswirkungen hat ein zusätzlicher Index denn? Speicherplatz zum einen nehme ich an. Noch welche?
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Es wird halt etwas mehr Arbeits- und Festplattenspeicher benötigt. Und das Einfügen neuer Datensätze könnte minimal länger dauern. Das sollte es dann aber auch gewesen sein.

Viele Grüße,

Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Antworten

Zurück zu „Coding & Technik“