0

我有这样的代码:

 $ads = Ad::find('all', array('order' => 'select_visits desc', 'limit' => 20, 'conditions'=>array('active = 1')));

我想将所有 $ads、select_visits 字段更新为 select_visits+1,我该怎么做?

4

1 回答 1

1

一种简单的方法(activerecord 方法)是查看查找器的结果,更改并保存它们,但这是非常低效的。

我会使用直接的 SQL 语句,使用 Connection 类,如下所示:

Ad::connection()->query('UPDATE ads SET select_visits=select_visits+1 WHERE active=1;');
于 2012-07-18T15:04:35.540 回答