Vas*_*r V 28 mysql performance join
可能重复:
MySQL:内连接vs
显式vs隐式SQL连接
当我们使用"JOIN ON"和"WHERE"子句运行连接查询时,性能是否存在差异?(无论表的数量或表中的条目数)
不确定是否已经讨论过这个主题.即便如此,我想知道是否使用最新版本的mySQL(5.1及更高版本),事情已经发生了变化.
解释声明清楚地显示了需要考虑的行数的很多差异.
我使用的语法是:
SELECT <field names>
FROM <table1>
JOIN <table2> ON <join_condition>
AND JOIN <table3> ON <join_condition>
AND JOIN <table4> ON <join_condition>
....
Run Code Online (Sandbox Code Playgroud)
SELECT <field names>
FROM <table names list separated by comma>
WHERE <join_condition>
AND <join_condition>
AND <join_condition>
....
Run Code Online (Sandbox Code Playgroud)
所以不确定JOIN ON或WHERE子句的使用是否会产生影响.请协助.
我怀疑使用“JOIN”正在执行“LEFT JOIN”。尝试使用“INNER JOIN”并查看解释语句是否相同。
SELECT <field names>
FROM <table1>
INNER JOIN <table2> ON <join_condition>
INNER JOIN <table3> ON <join_condition>
INNER JOIN <table4> ON <join_condition>
...
Run Code Online (Sandbox Code Playgroud)
使用内部联接时,我不希望两个查询之间存在性能差异。我会更担心是否有适当的索引。确保连接条件可以使用索引列进行匹配。
| 归档时间: |
|
| 查看次数: |
33208 次 |
| 最近记录: |