2014-06-23 2 views
-1

MySQL 데이터베이스를 사용하고있다. 나는 75K 데이터 행으로 구성된 테이블을 가지고있다. 간단한 쿼리를 사용하여 데이터를 가져옵니다.mysql에서 10K 레코드를 실행하는 데 너무 많은 시간이 걸린다. (매번 실패)

select * from mytable 

잘 작동하고 몇 초 안에 75k 행을 보여줍니다. 나는 limit 10000을 사용한 이들 데이터 중 일부를 가져오고 싶었습니다. 그것은 매번 붙어있어. 나는 10k 레코드 MySQL 쿼리를 최적화해야합니다. 나는 다음과 같은 쿼리를 사용하고 있습니다 :

select * from mytable limit 10000 

빨리 내 쿼리를 실행하는 방법을 몇 가지 솔루션을 줘.

내 데이터베이스 구조가 같다 : 나는 몇 초에서 더 큰 데이터를 가져올 수있는이 솔루션을

CREATE TABLE IF NOT EXISTS `mytable` (
`id` bigint(20) NOT NULL AUTO_INCREMENT, 
`col1` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col2` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col3` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col4` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '', 
`col5` int(11) NOT NULL, 
`col6` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
`col7` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col8` int(11) NOT NULL, 
`col9` int(11) NOT NULL, 
`col11` int(11) NOT NULL, 
`col12` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', 
`col13` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', 
`col15` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col16` enum('0','1') COLLATE utf8_unicode_ci NOT NULL DEFAULT '0', 
`col17` int(11) NOT NULL, 
`col18` varchar(255) COLLATE utf8_unicode_ci NOT NULL, 
`col19` enum('0','1') COLLATE utf8_unicode_ci NOT NULL, 
PRIMARY KEY (`id`), 
KEY `id` (`id`,`col2`,`col3`,`col4`,`col5`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=75530 ; 
+0

75K (제한 없음) 그 자체입니다 약. 테이블이 손상되지 않았 니? 오래 걸릴 때까지 얼마나 걸리나요? 테이블의 create 문은 무엇입니까? – ToBe

+0

이 쿼리는 횡설수설합니다. 'order by'절이 없으면 LIMIT 절은 반복 가능한 결과를 생성합니다. – symcbean

+0

'SELECT * FROM mytable ORDER BY id LIMIT 10000'은'id' 명령으로 처음 10k 레코드의 모든 데이터를 필요로 할 때 가능한 빠릅니다. 당신은'SQL'으로 그것을 향상시킬 수 없습니다. – Quassnoi

답변

2

: 데이터베이스 걱정 것 아무것도

SELECT l.id,l.col1,l.col2,l.col3,l.col3,l.col4,l.col5,l.col6,l.col7 
FROM  (
      SELECT id 
      FROM  mytable 
      WHERE removed='0' 
      ORDER BY id 
      LIMIT 10000 
     ) o 
JOIN  mytable ON l.id = o.id 
ORDER BY l.id 
+1

게시물에 대한 감사가 0.5 초 만에 매우 빠르게 실행되어 나를 많이 도왔습니다. – Sam

관련 문제