Tôi có truy vấn SQL folowwingMySQL nhóm bởi rất chậm
SELECT CustomerID FROM sales WHERE `Date` <= '2012-01-01' GROUP BY CustomerID
Các truy vấn được thực hiện trên 11.400.000 hàng và chạy rất chậm. Phải mất hơn 3 phút để thực hiện. Nếu tôi loại bỏ từng phần, điều này chạy dưới 1 giây. Tại sao vậy?
phiên bản MySQL Server là '5.0.21-cộng đồng-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
bạn có thể đăng lược đồ bảng (tạo tập lệnh bảng) –
Không chắc chắn liệu bạn có đăng truy vấn thực sự hay không. Nhưng trong truy vấn này, điều gì sẽ là cần thiết để "GROUP BY' nếu không có chức năng nhóm? –
Aziz, tôi cần trả lại giá trị duy nhất của customerID – Treach