这两个 mysql 查询有什么不同?一个使用左连接
我看到人们在 mysql 查询中使用 LEFT JOIN 从两个表中获取数据。但我通常在没有左连接的情况下执行此操作。除了语法之外,还有什么区别,例如性能吗?
这是我的正常查询风格:
SELECT * FROM table1 as tbl1, table2 as tbl2 WHERE tbl1.id=tbl2.table_id
与个人相比,
SELECT * FROM table1 as tbl1 LEFT JOIN table2 as tbl2 on tbl1.id=tbl2.id
我更喜欢第一种风格...嗯..
I see people using LEFT JOIN in their mysql queries to fetch data from two tables. But I normally do it without left join. Is there any differences besides the syntax, e.g. performance?
Here's my normal query style:
SELECT * FROM table1 as tbl1, table2 as tbl2 WHERE tbl1.id=tbl2.table_id
as compared to
SELECT * FROM table1 as tbl1 LEFT JOIN table2 as tbl2 on tbl1.id=tbl2.id
Personally I prefer the first style...hmm..
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在左连接中,即使 table2 不包含相同的 id,也会选择 table1 中的所有值。
您的正常查询样式可以与“内部联接”进行比较。
On a left join, all values from table1 are selected even if table2 does not contain the same id.
Your normal query style can be compared to an "inner join".