`field`方法主要作用是标识要返回或者操作的字段,可以用于查询和写入操作。
指定字段:
```php
Db::table('oreo_user')->field('id,name,type')->all();
```
这里使用field方法指定了查询的结果集中包含id,name,type三个字段的值。执行的SQL相当于:
```mysql
SELECT id,title,type FROM oreo_user
```
可以给某个字段设置别名,例如:
```php
Db::table('oreo_user')->field('id,username as name,email as mail,phone')->find();
```
执行的SQL语句相当于:
```mysql
SELECT id,username as name,email as mail,phone FROM oreo_user
```
**使用SQL函数**
可以在field方法中直接使用函数,例如:
```php
Db::table('oreo_user')->field('user_money,SUM(money)')->all();
```
执行的SQL相当于:
```mysql
SELECT user_money,SUM(money) FROM oreo_user
```
> 除了all方法之外,所有的查询方法,包括find等都可以使用field方法。
**使用数组参数**
field方法的参数可以支持数组,例如:
```php
Db::table('oreo_user')->field(['id','username','email'])->all();
```
最终执行的SQL和前面用字符串方式是等效的。
数组方式的定义可以为某些字段定义别名,例如:
```php
Db::table('oreo_user')->field(['id','username'=>'name'])->all();
```
执行的SQL相当于:
```mysql
SELECT id,username as name FROM oreo_user
```