您的位置:首页 > 数据库 > MySQL

MySQL 如何执行关联查询

2017-11-19 11:29 176 查看
MySql 中 “关联”一词包含的意义比一般意义上理解的要广泛。总的来说,MySQL认为任何一个查询都是一次“关联”。

MySQL关联查询原理

MySQL对任何关联都执行嵌套循环关联操作,即MySQL先在一个表中循环取出单条数据,然后再嵌套循环到下一个表中寻找匹配的行。依次下去,直到找到所有表中匹配的行为止。

例子

SELECT tab1.col1,tab2.col2 FROM tab1 INNER JOIN tab2 USING(col3) where tab1.col1 in (5,6);


执行上面语句的伪代码如下:

outer_iter = iterator over tab1 where col1 in (5,6)
outer_row = outer_iter.next
while outer_row
inner_iter = iterator over tab2 where col3 = outer_row.col3;
inner_row = inner_iter.next;
while inner_row
output [outer_row.col1,inner_row.col2]
inner_row = inner_iter.next
end
outer_row = outer_row.next
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql 关联查询 join