我完全是自学的,所以在我的知识中存在明显的差距。当我需要从多个表中获取数据时,我学会了如何进行连接。例如,如果我需要一个凭证号,账号,并从凭证表的平衡,并从另一个表中的相应的地址,我应该这样做:mySQL中的连接与其他方法
select v.voucherNbr, v.balanceInit, v.acctID, a.address, a.city from vouchers v
left join addresses a on v.acctID = a.id
这将返回所有的凭证记录,任何地址碰巧存在(在这种情况下,即使没有相应的地址,我们也要返回凭证记录,因此左连接。)
我最近继承了一些代码,似乎试图获取相同的数据(并在这种情况下,它确实返回正确的记录),它是这样做的:
select v.voucherNbr, v.balanceInit, v.acctID, a.address, a.city from vouchers v, addresses a
where v.acctID = a.id
任何人都可以向我解释这样做,而不是使用连接的影响。正如我所说的,在这种特殊情况下,它确实会返回与连接相同的数据,但它会一直存在吗?