私はfolowwingのSQLクエリMySQLのグループによって非常に遅い
SELECT CustomerID FROM sales WHERE `Date` <= '2012-01-01' GROUP BY CustomerID
にクエリを持っているが1140万行上で実行され、非常に遅い実行されます。実行には3分以上かかります。グループ別を削除すると、1秒未満で実行されます。何故ですか?
のMySQL Serverバージョン '5.0.21-コミュニティ-NT' です
Here is the table schema:
CREATE TABLE `sales` (
`ID` int(11) NOT NULL auto_increment,
`DocNo` int(11) default '0',
`CustomerID` int(11) default '0',
`OperatorID` int(11) default '0',
PRIMARY KEY (`ID`),
KEY `ID` (`ID`),
KEY `DocNo` (`DocNo`),
KEY `CustomerID` (`CustomerID`),
KEY `Date` (`Date`)
) ENGINE=MyISAM AUTO_INCREMENT=14946509 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
テーブルスキーマ(テーブルのスクリプトを作成)を転記することができます –
実際のクエリを投稿したかどうかわかりません。しかし、このクエリでは、グループ化関数がない場合、 'GROUP BY'の必要性は何ですか? –
Aziz、customerID – Treach