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 ... 是更常見的做法。