Ich habe die folgenden zwei Tabellen:Mysql - Leistungsprobleme
CREATE TEMPORARY TABLE T1 (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`Date` datetime NOT NULL,
PRIMARY KEY (`ID`)
)ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE T2 (
`ID` bigint(20) NOT NULL AUTO_INCREMENT,
`RecordID` int(11) NOT NULL,
PRIMARY KEY (`ID`),
KEY `ID` (`ID`),
KEY `RecordID` (`RecordID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
wo T1 ~ 100.000 Datensätze und T2 hat ~ 6.000.000 Datensätze
Die folgende Abfrage dauert ~ 1,5 Sekunden:
SELECT * FROM T1 INNER JOIN T2 ON T1.ID = T2.RecordID
Wenn ich die folgende where-Klausel hinzufüge, dauert es ~ 20 Sekunden:
WHERE T1.Date <= '2017-02-18'
Wissen, dass die Abfrage mit der Wo Ursache keine Datensätze zurückgibt.
Ich brauche deine Hilfe bitte.
Sie können einen Index für die Spalte "Datum" hinzufügen. – user5226582