AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken MySQL Tabelle flotter machen
Thema durchsuchen
Ansicht
Themen-Optionen

MySQL Tabelle flotter machen

Ein Thema von Medium · begonnen am 13. Jan 2012 · letzter Beitrag vom 19. Jan 2012
 
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#16

AW: MySQL Tabelle flotter machen

  Alt 13. Jan 2012, 14:38
Code:
EXPLAIN SELECT * FROM log
WHERE (printerdate BETWEEN '01-01-2011 00:00:00' AND '01-02-2011 00:00:00')
ORDER BY printerdate, packagenr
Ich muss mal ahnungslos fragen:
Wird das in mySQL tatsächlich sauber umgesetzt?
M.E. steht dort:
Nimm das Datumsfeld printerdate und schaue, wo es zwischen den Text(!)werten [von] und [bis] liegt.

Die Engine wird ja geezwungen, entweder den eigentlich Spaltenwert zu Text zu konvertieren oder die Operanden zu date. Kenne keine mySLQ explain ausgaben, aber die zeigen ja scheinbar, dass kein Index verwendet wird.

Vorschlag:
Explizite Konvertierung des Datums im Select und ggF. mit dem between spielen, also zerlegen in (für den Optimizer) "einfachere" Kriterien.

zu
"3. Die Sortierung auf einem Ergebnisset <1000 erst mal vernachlässigen"
Wenn dank Filterung das Ergebnisset so klein ist, ist die Sortierung belanglos. Zumindest bei halbwegs aktueller Hardware. Damit wären Indizes auf den Sortierspalten überflüssig.

zu
"Angezeigt wird ja immer nur ein Bruchteil (~50 Zeilen) in einem AdvDBGri"
Das Anzeigen hat nichts damit zu tun, was der SServer alles durchorgeln muss. Wenn Du es sortiert haben willst, kann er ja schlecht hergehen und nur die ersten 50 Datensätze sortieren.
50 Datensätze holen, spart nur den Großteil des Transportes zum Client, nicht die Sortierung von 150k Sätzen.
Gruß, Jo
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 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