field方法主要作用是标识要返回或者操作的字段,可以用于查询和写入操作。
用于查询指定字段
在查询操作中field方法是使用最频繁的。
使用字符串参数查询字段
[PHP] 纯文本查看 复制代码 Db::table('think_user')->field('id,title,content')->select();
这里使用field方法指定了查询的结果集中包含id,title,content三个字段的值。
可以给某个字段设置别名,例如:
[PHP] 纯文本查看 复制代码 Db::table('think_user')->field('id,nickname as name')->select();
使用数组参数查询字段
field方法的参数可以支持数组,例如:
[PHP] 纯文本查看 复制代码 Db::table('think_user')->field(['id','title','content'])->select();
最终执行的SQL和前面用字符串方式是等效的。
数组方式的定义可以为某些字段定义别名,例如:
[PHP] 纯文本查看 复制代码 Db::table('think_user')->field(['id','nickname'=>'name'])->select();
获取所有字段
如果有一个表有非常多的字段,需要获取所有的字段(这个也许很简单,因为不调用field方法或者直接使用空的field方法都能做到):
Db::table('think_user')->select();
Db::table('think_user')->field('*')->select();
字段排除
如果我希望获取排除数据表中的content字段(文本字段的值非常耗内存)之外的所有字段值,我们就可以使用field方法的排除功能,例如下面的方式就可以实现所说的功能:
[PHP] 纯文本查看 复制代码 Db::table('think_user')->field('content',true)->select();
则表示获取除了content之外的所有字段,要排除更多的字段也可以:
Db::table('think_user')->field(['user_id','content'],true)->select();
注意的是 字段排除功能不支持跨表和join操作。
以上就是本文的全部内容,感谢大家支持JScript之家——编程学习者社区!
|