我想确认一下SQL查询
SELECT ....
FROM apples,
oranges
LEFT JOIN kiwis ON kiwis.orange_id = oranges.id,
bananas
WHERE ....
Run Code Online (Sandbox Code Playgroud)
完全等同于FROM子句中的其他排列,例如
SELECT ....
FROM oranges
LEFT JOIN kiwis ON kiwis.orange_id = oranges.id,
bananas,
apples
WHERE ....
Run Code Online (Sandbox Code Playgroud)
要么
SELECT ....
FROM bananas,
apples,
oranges
LEFT JOIN kiwis ON kiwis.orange_id = oranges.id
WHERE ....
Run Code Online (Sandbox Code Playgroud)
只要橘子和猕猴桃之间明确的LEFT JOIN保持不变.从我在各种文档中看到的内容来看,返回的集应该完全相同.
我真的只关心查询的结果,而不是它在实际数据库中的性能.(我正在使用PostgreSQL 8.3,AFAIK不支持关于连接顺序的优化器提示,并将尝试自动创建最佳查询计划).