gpt4 book ai didi

c++ - MySQL 中的 where 子句如何工作?

转载 作者:太空宇宙 更新时间:2023-11-04 05:22:03 24 4
gpt4 key购买 nike

我有疑问。假设R和S分别是与属性A和B的2个关系。如果我有疑问

Select * 
From R, S
Where R.A = S.B

这是否像 c 或 c++ 中的双 For 循环一样工作

For( i=0; i<n; i++)
For( j=0; j<n; j++)
if (i == j)
//DO some work

最佳答案

首先:不知道 mysql 将如何在内部优化查询(不知道 mysql 的内部结构)。

用纯关系数据库的话来说,这就是你正在做的:

SELECT * FROM R, S -> 执行交叉连接,生成所有 (r,s) 元组。

WHERE R.A = S.B -> 现在选择那些具有这种行为的元组

因此它将遍历所有元组(或多或少像您的代码)。然而,mysql 完全有可能在内部将其简化为更高效的内部联接,它从不创建所有元组,而只创建 R.A=S.B 有效的元组。

关于c++ - MySQL 中的 where 子句如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2812959/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com