![]() |
Datenbank: MySQL • Zugriff über: DBExpress
Geschwindigkeitsunterschiede verschiedener Abfragen
Hallo,
ich hab mal eine (möglicherweise etwas theoretische) Frage, nicht grundsätzlich bezogen auf MySQL. Angenommen ich habe eine Tabelle mit den Feldern A - F. Gibt es bei Abfragen einen Geschwindigkeits-Unterschied, wenn ich die Reihenfolge der Felder bei der Abfrage ändere? Beispielsweise a)
SQL-Code:
b)
SELECT A, B, C, D, E, F FROM Tabelle
SQL-Code:
c)
SELECT A, C, F, B, D, F FROM Tabelle
SQL-Code:
Meine Vermutung ist, dass a) am schnellsten ist, aber ist das eher ein akademischer Unterschied oder wirklich relevant, und ist das von der Art der Felder abhängig (int, varchar, blob)?
SELECT F, E, D, C, B, A FROM Tabelle
Vielleicht weiß da einer mehr oder hat schon mal nachgemessen Gruß xaromz |
Re: Geschwindigkeitsunterschiede verschiedener Abfragen
Zitat:
Der "physikalische Datensatz" liegt im Speicher vor. Es wird also nicht auf der Platte vor- und zurückpositioniert. Die Feldliste (=das was nach SELECT steht) wird ausgewertet und ein Ergebnis-Dataset erzeugt. Ein theoretischer Vorteil, der durch den Prozessor Datencache entstehen könnte, ist nicht messbar. Die Reihenfolge der Felder in der Tabelle hat aber sicher einen Einfluss auf die Geschwindigkeit. Die Primärschlüsselfelder sollten z.B. am Anfang der Tabelle stehen und genau die gleiche Reihenfolge (bei mehr als einem Feld) haben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz