我有这个查询
DriveApi.MetadataBufferResult result = mDriveFolder.listChildren(mGoogleApiClient).await();
if (result == null || !result.getStatus().isSuccess()) {
return null;
}
MetadataBuffer buffer = result.getMetadataBuffer();
for(Metadata m: buffer){
Log.d(TAG, m.getTitle()+" - "+m.getOriginalFilename());
}
它运行得如此缓慢,大约需要30-60秒来获取数据,当数据增加时它会变得更慢,是否有任何想法使这个查询变得简单
答案 0 :(得分:0)
我首先要整理你的查询。您使用了混合连接语法,缺少别名并将临时表重命名为与真实表相同的名称,因此很难跟踪发生的情况。
您实际使用的是表格records
吗?它似乎是在没有任何标准的情况下交叉加入的。
您也可以重构SELECT FROM (SELECT ... )
。
一旦这一切都干净整洁,您应该运行EXPLAIN ...
并查看正在使用的索引以及查询可能会落在哪里。