2010-06-06 3 views
1

2 개의 작은 테이블로 분할 된 매우 큰 테이블 (거의 2,000,000 개의 레코드)이 있습니다. 어떻게 2 개의 작은 테이블로 분할 된 테이블을 쿼리 할 수 ​​있습니까? 노동 조합? 전망?

지금 내가 몇 가지 저장 프로 시저를 가지고 (... 많은 인) 하나 개의 테이블이 지난 주에만 레코드를 포함하고, 다른 하나는 나머지는 모두 포함되어 있습니다 /이 분할 도착하기 전에 큰 테이블을 쿼리하는 데 사용되는 기능.

CREATE VIEW `united_tables_view` AS select * from table1 union select * from table2; 
:

가 난 여전히

내보기의 그 ... 그러나 두 테이블 사이의 노조 문을 사용하여 뷰를 작성하는 것은 영원히 지속되는 것으로 보인다, 두 테이블의 조합을 조회하도록해야합니다

하고 난 모든 곳에서 'united_tables_view'에서 선택 'oldBigTable'에서 선택한 저장 프로 시저를 전환하고 싶습니다 ...

내가 시간을 짧게하기 위해 인덱스를 추가하는 시도했지만 아무것도 ... 을 할 수 없습니다 어떤 아이디어?

PS

뷰와 노동 조합 내 생각하지만 다른 창의적인 아이디어가 완벽 할 것입니다!

가져와주세요!

감사합니다.

답변

0

그렇지 않은 경우 테이블을 병합해야하며 항상 두 테이블을 모두 쿼리해야합니다. 여기에 일을 약에 StackOverflow에 대한 질문 : 당신은 별도의 그들을 유지해야하는 경우

How can I merge two MySQL tables?

, 당신의 라인을 따라 구문을 사용할 수 있습니다 : 여기

SELECT table1.column1, table2.column2 FROM table1, table2 WHERE table1.column1 = table2.column1; 

이에 대한 기사입니다 SELECT, JOIN 및 UNION 사용 https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-1050307.html