Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mysql Abfrage effizienter machen

Frage Entwicklung Datenbanken

Mitglied: ChrisFah

ChrisFah (Level 1) - Jetzt verbinden

29.08.2011, aktualisiert 23:50 Uhr, 2731 Aufrufe, 3 Kommentare

Suche nach Tipps, wie ich die folgende Query schneller machen kann

Hallo allerseits,

wieder wende ich mich mit einem kleinen Problemchen an euch!

Die folgende Query klappt zwar, ist aber sehr langsam, zumal die tabellen relativ gross sind, die da durchgeackert werden.

Gibt es da den einen oder anderen Kniff, diese Abfrage zu beschleunigen?

01.
$last_q_r = "SELECT DISTINCT MAX(k.k_id), k.user_id, k.interessenten_id, k.objekt_id, MAX(k.k_erstellt) AS max_k_erstellt  
02.
			FROM ".TABLE_KONTAKTE." k, ".TABLE_OBJEKTE." o  
03.
			WHERE k.kontaktart < '90'  
04.
			AND k.objekt_id = o.o_id  
05.
			AND o.verkauft != '1'  
06.
			GROUP BY k.interessenten_id, k.user_id, k.objekt_id  
07.
			HAVING DATEDIFF(NOW(), max_k_erstellt) > ".(int)$idle_days." ";
Würde es Sinn machen, das DATEDIFF in den WHERE Bereich zu stecken ?

Vielen Dank im voraus,
lg, Chris

PS: Das DISTINCTMAX(k.k_id) habe ich schon gekillt, k_id wird ausserdem nicht benötigt.
Mitglied: godlie
29.08.2011 um 21:26 Uhr
Hallo,

wie sehen die Indizes für die Tabelle so aus?
Bitte warten ..
Mitglied: ChrisFah
29.08.2011 um 23:51 Uhr
Zitat von godlie:
Hallo,

wie sehen die Indizes für die Tabelle so aus?

Nur der Standard vom Erstellen der Tabellen
Bitte warten ..
Mitglied: pi314
12.09.2011 um 09:28 Uhr
Servus,

als erstes würde ich mal Indexes empfehlen, da ja die Tabellen Deiner Aussage nach recht groß sind:
k.objekt_id und k.kontaktart sind erstmal gute Kandidaten.

Als nächstes fällt mir auf, dass du k.kontaktart mit kleiner als abfrägst und dann ein Char angibst.
Welchen Typ hat denn die Spalte k.kontaktart? Number oder VarChar o. ä.?
Hier sollte sie Number haben, da ansonsten noch eine implizite Konvertierung von Nöten ist, die natürlich Zeit frisst..

Vielleicht hilft's ja schon, ansonsten muss man noch tiefer graben

so long,
pi
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MYSQL Abfrage Werte summieren (3)

Frage von Ghost108 zum Thema Datenbanken ...

Datenbanken
gelöst MySQL Abfrage um JOIN erweitern (14)

Frage von datadexx zum Thema Datenbanken ...

Webentwicklung
Animation selber machen (6)

Frage von jensgebken zum Thema Webentwicklung ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
Benutzer lässt sich nur an einem Clientcomputer anmelden (11)

Frage von Ammann zum Thema Windows Server ...

Hosting & Housing
gelöst Webserver bei WIX, aber DNS Server wo anders (9)

Frage von laster zum Thema Hosting & Housing ...

Hyper-V
Virtualisierung eines Servers (7)

Frage von Lornsti zum Thema Hyper-V ...