select docid from A where docid IN (select distinct(docid) from B)
는 데이터의 크기에 따라 너무 긴 33초을 걸린다.MySQL은
다음은 두 테이블의 세부 사항입니다. 난 단지 select docid from A
을 실행하면 0.07 초를 취하고있다 select docid from B
동안
Table A :
| docid | int(11) | NO | PRI | NULL | |
Total number of entries = 500 (all entries are unique)
Table B:
| docid | int(11) | YES | | NULL | |
Total number of entries = 66508
(number of unique entries are 500)
mysql version : 5.2
는 0.00 초를 취할 것입니다.
그런데 왜 하위 쿼리를 사용하는 IN 쿼리가 33 초가 걸리나요? 내가 뭔가 잘못하고 있는거야?
해당 쿼리를 통해 달성하고자하는 목표는 무엇입니까? – Sleeperson
이 쿼리는 1 초 후에 실행되어야합니다. 왜이 시간이 너무 오래 걸리는 거지? – Kunal
'desc select docid from A from docid IN (B에서 distinct (docid)를 선택하십시오); - 오버플로는'IN() '과 일치시키기 위해 스캔해야하는 숫자 행 수입니다. – ajreal