クエリで EXPLAIN を実行した後:
explain
select name from t1 where name like '%smthing%'
UNION ALL
select name from t2 where name like '%smthing%'
UNION ALL
select name from t3 where name like '%smthing%'
UNION ALL
select name from t4 where name like '%smthing%'
4 つのテーブルの UNION によって構成され、次のようになります。
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t1 index (NULL) name 152 (NULL) 337 Using where; Using index
2 UNION t2 index (NULL) name 152 (NULL) 3842 Using where; Using index
3 UNION t3 index (NULL) name 452 (NULL) 204 Using where; Using index
4 UNION t4 index (NULL) name 452 (NULL) 8269 Using where; Using index
(NULL) UNION RESULT <union1,2,3,4> ALL (NULL) (NULL) (NULL) (NULL) (NULL)
ユニオンの各コンポーネントを説明すると、型は「INDEX」ですが、ユニオン結果の型は「ALL」です。この動作の理由はどれですか? ありがとう