7.链式查询
<p>一.查询规则 </p>
<ol>
<li>前面课程中我们通过指向符号“->”多次连续调用方法称为:链式查询;</li>
<li>当 Db::name('user')时,返回数据库对象,即可连缀数据库对应的方法;</li>
<li>而每次执行一个数据库查询方法时,比如 where(),还将返回数据库对象;</li>
<li>只要还是数据库对象,那么就可以一直使用指向符号进行链式查询;</li>
<li>如果想要最后得到结果,可以使用 find()、select()等方法结束查询;</li>
<li>而 find()和 select()是结果查询方法(放在最后),并不是链式查询方法;
Db::name('user')->where('id', 27)->order('id', 'desc')->find()</li>
<li>除了查询方法可以使用链式连贯操作,CURD 操作也可以使用</li>
</ol>
<p>二.更多查询 </p>
<ol>
<li>如果多次使用数据库查询,那么每次静态创建都会生成一个实例,造成浪费;</li>
<li>我们可以把对象实例保存下来,再进行反复调用即可;
$user = Db::name('user');
$data = $user->select();</li>
<li>当同一个对象实例第二次查询后,会保留第一次查询的值;
$data1 = $user->order('id', 'desc')->select();
$data2 = $user->select(); return Db::getLastSql();
SELECT * FROM <code>tp_user</code> ORDER BY <code>id</code> DESC</li>
<li>使用 removeOption()方法,可以清理掉上一次查询保留的值; $user->removeOption('where')->select();</li>
</ol>