`JOIN`方法用于根據兩個或多個表中的列之間的關系,從這些表中查詢數據。join通常有下面幾種類型,不同類型的join操作會影響返回的數據結果。
* **INNER JOIN**: 等同于 JOIN(默認的JOIN類型),如果表中有至少一個匹配,則返回行
* **LEFT JOIN**: 即使右表中沒有匹配,也從左表返回所有的行
* **RIGHT JOIN**: 即使左表中沒有匹配,也從右表返回所有的行
## 說明
~~~
join ( string $table , string $alias = null )
leftJoin ( string $table , string $alias = null )
rightJoin ( string $table , string $alias = null )
~~~
**參數**
### table
~~~
要關聯的表名
~~~
### alias
~~~
表的別名
~~~
**返回值**
數組或者空
## 舉例
~~~
$order = Db::name('og_guantui_order', 'a')
->leftjoin('og_guantui_activity', 'b')->on('a.activity_id', 'b.id')
->leftjoin('og_guantui_seller_data', 'c')->on('b.seller_id', 'c.seller_id')
->field('a.id,a.activity_id,a.user_id,a.price,a.status,a.status,b.id as nid,b.title,b.pic,c.seller_id as sid,c.head,c.company')
->where($where)
->page($page, 5)
->select();
~~~
~~~
$order = Db::name('og_guantui_order', 'a')
->leftjoin('og_guantui_activity', 'b')->on(array('a.id' => 'b.uid', 'a.name' => 'b.username'))
->where('a.id', $id)
->field('a.price,a.status,a.type,a.order_no,a.wx_order_no,a.order_time,a.pay_time,a.status,b.id as nid,b.title,b.pic,c.seller_id as sid,c.head,c.company')
->find();
~~~