MySQL联接涉及哪些复杂性?

实际上,用简单的话来说,我们可以说表之间的联接是单表SELECT语句的扩展,但它涉及其他复杂性:

需要指定所有表

我们需要在FROM子句中指定连接中涉及的所有表。与SELECT语句相反,在SELECT语句中仅需要一个表名。

需要指定匹配条件

我们只需要指定匹配条件,基于这些条件,联接将一个表中的记录与另一个表中的记录进行匹配。条件通常在WHERE子句中给出,但是特定的语法取决于联接的类型。

需要指定列列表

我们只需要指定要显示的列的列表即可。它们可以包括联接所涉及的任何或所有表中的列。

需要为特定列指示特定表

如果联接引用的列名称出现在多个表中,则该名称是不明确的,并且每次引用该列时,我们都必须指出我们指的是哪个表。

猜你喜欢