`JOIN`方法用于根据两个或多个表中的列之间的关系,从这些表中查询数据。join通常有下面几种类型,不同类型的join操作会影响返回的数据结果。
- **INNER JOIN**: 等同于 JOIN(默认的JOIN类型),如果表中有至少一个匹配,则返回行
- **LEFT JOIN**: 即使右表中没有匹配,也从左表返回所有的行
- **RIGHT JOIN**: 即使左表中没有匹配,也从右表返回所有的行
- **FULL JOIN**: 只要其中一个表中存在匹配,就返回行
```
要关联的(完整)表名以及别名
```
支持的写法:
- 写法1:[ '完整表名或者子查询'=>'别名' ]
- 写法2:'不带数据表前缀的表名'(自动作为别名)
- 写法2:'不带数据表前缀的表名 别名'
例如
```php
Db::table('oreo_user')
->alias('a')
->join('oreo_wx b','a.id = b.wx_id')
->join('oreo_test c','a.test_id = c.id')
->all();
```
//
```php
Db::table('oreo_user')
->alias('a')
->join('oreo_auth_role b','a.role_id = b.id')
->field('a.id,b.id as role_id,a.username,a.gender,a.real_name,a.user_phone,a.user_email,a.state,a.create_time,b.role_name')
->limit(0,30)->all();
```