`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();
~~~