yii2.0查询数据库降低内存占用方法

1.查询结果转化数组    (对象在内存中占有量比数组高 where()后面加->asArray() 把对象转换成数组)

$results = Test::find()->where([‘between‘,‘id‘,1,2])->all();     //打印结果是对象

$results = Test::find()->where([‘between‘,‘id‘,1,2])->asArray()->all();   //打印结果是数组

2.批量查询    (循环查询,循环次数多,sql语句多,性能差|批量查询一次查询多条,减少循环次数,性能好,节省内存)

foreach(Test::find()->batch(20) as $tests)   //每次查询20条数据给$tests
{
print_r(count($tests));
}

时间: 2024-10-18 10:54:01

yii2.0查询数据库降低内存占用方法的相关文章

C# WinForm应用程序降低系统内存占用方法总结

这篇文章主要介绍了C# WinForm应用程序降低系统内存占用方法总结,本文总结了9个方法,同时给出了一个定期清理执行垃圾回收代码,需要的朋友可以参考下 背景: 微软的 .NET FRAMEWORK 现在可谓如火如荼了.但是,.NET 一直所为人诟病的就是“胃口太大”,狂吃内存,虽然微软声称 GC 的功能和智能化都很高,但是内存的回收问题,一直存在困扰,尤其是 winform 程序,其主要原因是因为.NET程序在启动时,是需要由JIT动态编译并加载的,这个加载会把所有需要的资源都加载进来,很多资

下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子): User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据: User::find()->where(['name' => '小伙儿'])->all(

Yii2.0 查询(CRUD)

yii2使用中的一些基本的增删改查操作.以用户为例说明: User::find()->all();    //返回所有用户数据: User::findOne($id);   //返回 主键 id=1  的一条数据: User::find()->where(['name' => 'ttt'])->one();   //返回 ['name' => 'ttt'] 的一条数据: User::find()->where(['name' => 'ttt'])->all(

C# WinForm应用程序降低系统内存占用方法总结【转】

WinForm程序点用一直是个大问题,时间运行长了,越来越大,最近在网上发现个贴,试了上面方法,从进程来看,内存确实降下去了,效果还不错. 这里整理了一些网上关于Winform如何降低系统内存占用的资料,供参考: 1.使用性能测试工具dotTrace 3.0,它能够计算出你程序中那些代码占用内存较多2.强制垃圾回收3.多dispose,close4.用timer,每几秒钟调用:SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle,

yii2.0操作数据库

首先不得不说yii2.0面向对象的比较彻底,建议没学过或者没学好面向对象的同学再看看面向对象. 其次切入正题. 先创建数据库,这步自己写. DROP TABLE IF EXISTS `country`;CREATE TABLE IF NOT EXISTS `country` ( `code` char(2) NOT NULL, `name` char(52) NOT NULL, `population` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`co

Yii2.0 对数据库 查询的一些简单的操作(转载)

User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子): User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据: User::find()->where(['name' => '小伙儿'])->all(); 此方法返回 ['name' => '小伙儿']

Yii2.0 对数据库 查询的简单操作

User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子): User::find()->where(['name' => '小伙儿'])->one(); 此方法返回 ['name' => '小伙儿'] 的一条数据: User::find()->where(['name' => '小伙儿'])->all(); 此方法返回 ['name' => '小伙儿']

详细讲解查询数据库提高的实用方法

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放

yii2.0里的redirect跳转方法

在yii2框架里难免会出现跨控制器跳转,调用方法等,这就用到了redirect了, 带参数的 $control=Yii::app()->runController('site/show/id/2'); 不带参数的 $control=Yii::app()->runController('site/show'); redirect使用方法: 一般都是控制器层里执行某段代码结束之后跳转到其他控制器的方法里, $this->redirect(array('/site/contact','id'=