加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 服务器 > 安全 > 正文

MYSQL联合查询效率问题

发布时间:2020-12-31 06:50:38 所属栏目:安全 来源:网络整理
导读:《MYSQL联合查询效率问题》要点: 本文介绍了MYSQL联合查询效率问题,希望对您有用。如果有疑问,可以联系我们。 导读:MYSQL联合查询效率问题,同样的功能,不同的写法,时间和内存占用差了几千倍,不废话,直接上代码 同样的功能,直接上代码 第一种写法: 代码如

《MYSQL联合查询效率问题》要点:
本文介绍了MYSQL联合查询效率问题,希望对您有用。如果有疑问,可以联系我们。

导读:MYSQL联合查询效率问题,同样的功能,不同的写法,时间和内存占用差了几千倍,不废话,直接上代码 同样的功能,直接上代码

第一种写法:

代码如下:

  1. $Rs=DB::get($_ENV['DB'],3,"SELECT?*?FROM?_xiazhu?WHERE?uid?IN(SELECT?id?FROM?_user?WHERE?id<5000)");?
  2. var_dump($Rs);?

内存和时间:
内存使用:96514.53Kb 运行时间:1272.73ms

第二种写法:

代码如下:

  1. $Sql='';?
  2. $Rs=DB::get($_ENV['DB'],"SELECT?id?FROM?_user?WHERE?id<5000");?
  3. $Sql.=(count($Rs)>0)???"?AND?id?IN(".strtr(json_encode($Rs,JSON_UNESCAPED_UNICODE),array('{"id":"'=>'','"}'=>'','['=>'',']'=>'')).')'?:?'';?
  4. unset($Rs);?
  5. ?
  6. $Rs=DB::get($_ENV['DB'],"SELECT?*?FROM?_xiazhu?WHERE?1=1{$Sql}");?
  7. var_dump($Rs);?
  8. unset($Sql);?

内存和时间:

内存使用:9.77Kb 运行时间:11.97ms

由此可見,如果你不急于追赶开发进度的话,建议你使用第二种方法分开写,速度会有明显的差异.

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读