`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
```