에 가입하지만, 난 아직도 이유를 설명 할 수 없다 가입 왼쪽 MySQL의 쿼리입니다 115ms 대 478ms. 그들은 모두 InnoDB를 사용하고 정의 된 관계가 있습니다. '합법성'테이블에는 11 개의 행이 들어 있지만 'card_legality'에는 약 200,000 개의 행이 포함됩니다.이유는, '상당히'내 내면보다 더 빨리 내가이 연구 한
CREATE TABLE `card_legality` (
`card_id` varchar(8) NOT NULL DEFAULT '',
`legality_id` int(3) NOT NULL,
`cl_boolean` tinyint(1) NOT NULL,
PRIMARY KEY (`card_id`,`legality_id`),
KEY `legality_id` (`legality_id`),
CONSTRAINT `card_legality_ibfk_2` FOREIGN KEY (`legality_id`) REFERENCES `legality` (`legality_id`),
CONSTRAINT `card_legality_ibfk_1` FOREIGN KEY (`card_id`) REFERENCES `card` (`card_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
: 그리고 여기에 각각의 구조는
CREATE TABLE `legality` (
`legality_id` int(3) NOT NULL AUTO_INCREMENT,
`l_name` varchar(16) NOT NULL DEFAULT '',
PRIMARY KEY (`legality_id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=latin1;
단순히 좌 - 가입 사용할 수 있지만 그것은 아주 잘 ... 어떤 생각을하시기 바랍니다하지 않는 것?
업데이트 : 요청에 따라 각각에 대한 설명 결과를 포함 시켰습니다. 나는 이전에 실행했지만, 나는 그것의 철저한 이해를 가지고 척 해달라고 ..
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE cl ALL PRIMARY NULL NULL NULL 199747 Using where
1 SIMPLE l eq_ref PRIMARY PRIMARY 4 hexproof.co.uk.cl.legality_id 1
을 AND, 내부 조인 :
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE l ALL PRIMARY NULL NULL NULL 11
1 SIMPLE cl ref PRIMARY,legality_id legality_id 4 hexproof.co.uk.l.legality_id 33799 Using where
'card_id'는 선택의 여지가없는 VARCHAR입니다. – Ben