一、解释
mysql>解释选择主机、用户从用户插件;
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + +
| | id select_type表| | |型possible_keys关键| | key_len | ref额外| | |行
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + +
| 1 |简单用户所有零零| | | | |空零零| | 5 | |
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + +
1行集(0.00秒)
1.身份证
1. sql执行顺序:从大到小的执行。如果相等先执行上面的,再执行下面的。(id号为sql代码中选择从左到右出现的顺序号)
2. select_type就是选择类型,可以有以下几种
(1)简单
简单选择(不使用联盟或子查询等)例如:
程序代码
mysql>解释select * t3中id=3952602;,
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +,
| | id select_type表| | |型possible_keys关键| | key_len | ref额外| | |行,
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +,
| 1 |简单| t3 | const |初选,idx_t3_id主要| | 4 | const | 1 | |,
+ - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +
(2)主要
。
最外层的选择。例如:
程序代码
mysql>解释select * from (select * t3中id=3952602),,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + +,
| | id select_type表| | |型possible_keys关键| | key_len | ref额外| | |行,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + +,
主要| 1 | | |系统零零零零| 1 | | | | | |,
| 2 |中| t3 | const |初选,idx_t3_id主要| | 4 | | 1 | |,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - + - - - - - - - +
(3).UNION
联盟中的第二个或后面的选择语句。例如
程序代码
mysql>解释select * t3中id=3952602 union all select * t3;,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +,
| | id select_type表| | |型possible_keys关键| | key_len | ref额外| | |行,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +,
主要| 1 | | t3 | const |初选,idx_t3_id主要| | 4 | const | 1 | |,
| 2 |联盟t3 | | |空零零零| | 1000 | | | |,
零| |联盟结果| | |所有空零零零零| | | | | |,
+ - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + +
(4).DEPENDENT联盟
联盟中的第二个或后面的选择语句,取决于外面的查询
程序代码
mysql>解释select * t3中id(从t3选择id, id=3952602 union all从t3)选择id;,
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +