加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

MYSQL联合查询效率问题

发布时间:2020-12-31 05:43:14 所属栏目:站长百科 来源:网络整理
导读:《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

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

(编辑:厦门网)

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

    热点阅读