从多个表中选择vs联接?

zxlwwiss  于 2021-08-13  发布在  Java
关注(0)|答案(1)|浏览(421)

初学者问。在学习sql和进行一些在线培训练习时,遇到了这个解决方案,可以从两个表中创建摘要:

SELECT salesman.name AS "Salesman",
customer.cust_name, customer.city 
FROM salesman,customer 
WHERE salesman.city=customer.city;

我觉得这很混乱,因为我本来希望在从两个不同的表中提取数据时进行连接。我的udemy培训从未同时给出多个表的from语句的示例:)
这是执行基本联接的另一种方法吗?或者join做了一些不能做的事情有什么原因吗?
谢谢

piztneat

piztneat1#

你可以用它 join 如下所示,这称为 explicit join ,您应该始终尝试使用它,因为它在查询中提供了更多可读性。

SELECT 
  s.name as Salesman,
  c.cust_name, 
  c.city 
FROM salesman s
join customer c
on s.city=c.city;

使用多表时 where 然后它被称为 implicit join 正如您在查询中使用的。性能方面两者应该相同。

相关问题