1 using()用于两张表的join查询,要求using()指定的列在两个表中均存在,并使用之用于join的条件。 示例: select a.*, b.* from a left join b using(colA); 等同于: select a.*, b.* from a left join b on a.colA = b.colA; 2 多表查询就使用多个这样的j
1 using()用于两张表的join查询,,要求using()指定的列在两个表中均存在,并使用之用于join的条件。 示例: select a.*, b.* from a left join b using(colA); 等同于: select a.*, b.* from a left join b on a.colA = b.colA;
2 多表查询就使用多个这样的join。 示例: select a.*, b.* from a left join b using(colA) left join c using(colB); 要求colA在a, b中均存在,colB在a, c表中均存在。
总之,using() 只是join中指定连接条件的简写,在简单的连接中常用。在列名称不同时或连接条件复杂时就无法用了,使用 a left join b on ... 是更常见的做法。