Mysql 对自联接使用别名

Mysql 对自联接使用别名,mysql,alias,self-join,Mysql,Alias,Self Join,我一直在使用MySQL,我有一个关于自连接的问题 自联接时,是否需要为两个表都添加别名?例如: FROM customer c1, customer c2 现在我知道这是可行的,但它似乎也适用于 FROM customer, customer c2 除了可读性之外,是否有任何特殊的原因使这两个表都具有别名?不给一个表取别名有什么问题吗?从功能上讲,给两个表取别名没有好处。但是,对两者都使用别名可以消除潜在的混淆点,并使查询更具可读性。没有错:正如您所验证的,它确实有效。但通常最好将两者都别名

我一直在使用MySQL,我有一个关于自连接的问题

自联接时,是否需要为两个表都添加别名?例如:

FROM customer c1, customer c2
现在我知道这是可行的,但它似乎也适用于

FROM customer, customer c2

除了可读性之外,是否有任何特殊的原因使这两个表都具有别名?不给一个表取别名有什么问题吗?

从功能上讲,给两个表取别名没有好处。但是,对两者都使用别名可以消除潜在的混淆点,并使查询更具可读性。

没有错:正如您所验证的,它确实有效。但通常最好将两者都别名,以避免任何阅读歧义。但是:您应该开始在
FROM
子句中使用显式的
JOIN
条件,而不是
where
子句中的隐式JOIN条件。别名两者都是为了更好的可读性。