SQL:链接连接效率

2024-04-23

我的 WordPress 插件中有一个查询,如下所示:

SELECT users.*, U.`meta_value` AS first_name,M.`meta_value` AS last_name 
    FROM `nwp_users` AS users 
        LEFT JOIN `nwp_usermeta` U 
            ON users.`ID`=U.`user_id` 
        LEFT JOIN `nwp_usermeta` M 
            ON users.`ID`=M.`user_id` 
        LEFT JOIN `nwp_usermeta` C 
            ON users.`ID`=C.`user_id` 
    WHERE U.meta_key = 'first_name' 
        AND M.meta_key = 'last_name' 
        AND C.meta_key = 'nwp_capabilities' 
    ORDER BY users.`user_login` ASC 
    LIMIT 0,10

我刚开始使用JOIN我想知道使用这么多的效率有多高JOIN在一个查询中。将其拆分为多个查询是否更好?

可以在此处找到数据库架构。 http://codex.wordpress.org/Database_Description#Table%3a_wp_users


JOIN如果键被索引,通常不会那么糟糕。LEFT JOIN几乎总是会影响性能,如果可能的话应该避免它。不同之处在于LEFT JOIN即使您要连接的列为 NULL,也会连接连接表中的所有行。虽然是常规(直)JOIN只是连接匹配的行。

发布您的表结构,我们可以为您提供更好的查询。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL:链接连接效率 的相关文章

  • 两种 SQL 连接符号有什么区别?

    SQL 1 select from t1 join t2 on t1 f1 t2 f2 SQL 2 select from t1 t2 where t1 f1 t2 f2 他们返回的结果是相同的 它们之间有什么区别吗 例如 DBMS 如何运
  • .NET、C#、LINQ、SQL 和 OR 映射 - 我只是不明白:(

    我只是不明白 我什至不确定我是否在寻找正确的方向 问题 这就是我的 C 应用程序 我通过 SSH 连接到在线 MySQL 数据库 现在我可以使用 MySQL Connector Net 驱动程序 http dev mysql com dow
  • 查找二维空间中圆内的所有点

    我表示我的 2D 空间 考虑一个窗口 其中每个像素显示为 2D 数组中的一个单元格 即 100x100 的窗口由相同维度的数组表示 现在给定窗口中的一个点 如果我画一个半径的圆r 我想找到该圆圈中的所有点 我想我应该检查半径周围方形区域中的
  • 我的 mac 上的 python mysqldb 错误:库未加载:@rpath/libmysqlclient.21.dylib

    import MySQLdb leads to Traceback most recent call last File
  • MySQL:插入被外键引用行的更新阻止

    让我用一个 SQL 示例来开始我的问题 这是表设置 创建表x and y With y x指的是x id 插入一行到x id 1 START TRANSACTION CREATE TABLE x id INT 11 NOT NULL AUT
  • AWS EMR PySpark 连接到 mysql

    我正在尝试使用 jdbc 通过 pyspark 连接到 mysql 我可以在 EMR 之外完成此操作 但是当我尝试使用 EMR 时 pyspark 无法正确启动 我在我的机器上使用的命令 pyspark conf spark executo
  • MS SQL 2008 如何读取日志

    我有一个有很多行的表 有什么办法可以找出来当插入具体行时 我没有创建 更新时间列 Thanks 检查日志以读取此类信息可以在单个日志条目的基础上完成 但该格式仍然没有记录 而且解码起来确实不容易 我只会出于纯粹的兴趣或取证目的而查看它 如果
  • Vapor MySQL - 未显示为导入值

    这个问题是关于 Swift Web 框架 Vapor 我正在尝试使用 Swift 的包管理器导入 VaporMySQL 框架 我已经在本地运行数据库 mySQL 端口打开并工作 mySQL 数据库正在工作 Vapor 应用程序正在工作 我已
  • 为什么 SDL 在 Mac 上比 Linux 上慢得多?

    我正在研究使用 SDL2 渲染的单线程图形程序 https github com TurkeyMcMac intergrid 请参阅末尾的较小示例 它既可以在旧的 Linux 机器上运行 也可以在不太旧的 Mac 上运行 Linux 计算机
  • 如何使用过程更改列的默认值

    这是我当前的 SQL 的样子 DELIMITER CREATE PROCEDURE updateDefaultUserRole IN rid in INT BEGIN ALTER TABLE users MODIFY rid INT 255
  • 当 mysql_connect 不适用于 IIS 上的 PHP 时,不会返回任何错误消息

    我是 PHP 和 MySQL 的新手 最近在已经运行 IIS v6 的 Windows Server 2003 服务器上安装了 PHP v5 3 10 和 MySQL v 5 5 21 PHP 运行 我已经从 MySQL 5 5 命令行客户
  • MPI Alltoallv 还是更好的单独发送和接收? (表现)

    我有许多进程 大约 100 到 1000 个 每个进程都必须将一些数据发送到其他一些进程 比如大约 10 个 通常 但并非总是必要 如果 A 发送到 B B 也会发送到 A 每个进程都知道它必须从哪个进程接收多少数据 所以我可以用MPI A
  • Symfony 3.4 没有元数据类来处理错误

    我已经安装了 symfony 3 4 和 学说包 php gt 5 5 9 doctrine doctrine bundle 1 8 doctrine doctrine migrations bundle 1 3 doctrine orm
  • SQL 数据范围最小值最大值类别

    我想确定 2 个类别的范围 A 类和 B 类 A 从 1 到 15 开始 B 从 16 到 31 开始 然后 A 再次从 32 到 40 开始 现在如果运行此查询 select min range max range from table
  • Oracle PL/SQL 块的语法图是否错误?

    我怀疑 a 的语法图plsql block如中给出的Oracle 数据库 PL SQL 语言参考对于 Release 2 来说是错误的 以供参考 这是当前的链接 http download oracle com docs cd E11882
  • 显示不同表中的名称而不是 ID

    我有 2 张桌子 Category带主键ID和列Name Employee带主键ID和列Category id Note Category id现在显示ID正确地 我想展示Name代替ID对于输出Employee Attempt categ
  • 如何设置 MySQL Workbench 自动断开与服务器的连接?

    有没有办法设置Workbench在空闲时自动与服务器断开连接 命令行 mysql 客户端在空闲时断开连接 然后在运行查询时重新连接 我也希望 Workbench 自动断开连接 我无法修改服务器的超时设置 但命令行客户端可以按照当前服务器设置
  • 从 Inno Setup 项目内部调用 MySQL

    我正在为一些使用 MySQL 的软件编写安装程序 我正在尝试运行 sql用于在安装时设置数据库的脚本 唉 我目前在执行它时遇到了很大的问题 这个问题似乎是由于这样一个事实而产生的 当你设置一条通往 sql文件内的 execute SOURC
  • 如何提取 MySQL 日期中的月份和年份并进行比较?

    如何从 mySQL 日期中提取月份和日期并将其与另一个日期进行比较 我找到了 this MONTH 但它只获取月份 我寻找月份和年份 在Mysql Doku中 http dev mysql com doc refman 5 5 en dat
  • 查找返回的 mysql 结果中的行数(nodejs)

    当使用 felixge 的 mysql for node js 时 如何向结果对象询问返回的行数 我有一个相当昂贵的查询 所以我不想运行COUNT 首先 只是为了第二次运行查询 如果是选择查询 则只需获取返回数组的长度即可 connecti

随机推荐

  • Android 猴子跑步脚本

    我正在尝试通过 Monkey runner 命令提示符执行示例 python 程序 但它抛出错误 Can t open specified script file Usage monkeyrunner options SCRIPT FILE
  • 如何解析 WordOpenXML 输出中的 mathML?

    我只想读取用于生成方程的 xml 这是我通过使用获得的Paragraph Range WordOpenXML 但用于方程的部分并不符合MathML我发现Equation微软的MathML 我是否需要使用一些特殊的转换器来获取所需的 xml
  • For 循环有效,但 For Each 无效。为什么?

    在包含 forEach 循环的行上抛出了越界异常 但据我所知 这段代码没有任何问题 for 循环从 char 数组的元素 0 开始并循环直到到达最后一个元素 但是当我使用更长的 for 循环尝试此代码时 即 for int i 0 i lt
  • 更改 maven pom.xml 中传递依赖项的版本

    我一直在尝试覆盖我的一个项目中的传递依赖版本 我在 github 上找到了以下示例项目来进行实验 https github com Richou swagger codegen maven plugin https github com R
  • 求 2 次幂的算法

    我找到了一个小算法来确定一个数字是否是 2 的幂 但没有解释它是如何工作的 到底发生了什么 var potence n gt n n n 1 for var i 2 i lt 16 i if potence i console log i
  • Android ACTION_IMAGE_CAPTURE 与内存中的 EXTRA_OUTPUT

    当我打电话时用相机拍照时 File file new File getFilesDir getAbsolutePath myImage jpg Uri outputFileUri Uri fromFile file cameraIntent
  • $elemMatch 的 MongoDB 索引

    索引帮助页面位于http www mongodb org display DOCS Indexes http www mongodb org display DOCS Indexes没有提到 elemMatch 因为它说要在我的 2M 对象
  • iOS 11:大标题的 UINavigationBar 高度(模仿 Apple Music 应用)

    我试图模仿UINavigationBar由 Apple Music 应用程序使用 日期显示在大标题上方 我知道 Apple Music 应用程序不使用该标准UINavigationBar of ios11 questions tagged
  • 数据框中值之间的距离

    我有一个数据框 其中包含一系列虚拟变量 这些变量指示在另一个事件 a 之前发生的事件类型 e1 e2 我需要知道从类型 e1 和 e2 的每个事件到下一个事件 a 的索引值的距离 我尝试使用显示的数据进行演示 我已经研究了一些解决方案 包括
  • 管道和流程管理

    我正在开发一个用 C 实现的小型 shell tsh 这是一项作业 作业的一部分属于 PIPING 我必须将一个命令的输出通过管道传输到另一个命令 例如 ls l sort 当我运行 shell 时 我在其上执行的每个命令都由它生成的子进程
  • 没有河流的世界地图与 matplotlib / 底图?

    有没有一种方法可以用底图 或者没有底图 如果有其他方法的话 绘制大陆的边界 而不会出现那些烦人的河流 尤其是那段刚果河 连入海口都没有 令人不安 编辑 我打算进一步在地图上绘制数据 就像在底图库 http matplotlib org ba
  • 是否存在 Yahoogroups api?

    我们有 yahoogroups api 吗 我有一个 yahoo 群组 我希望每当我的 RSS 源更新时 都会自动向该群组发布一条消息 其中包含该帖子的链接 那可能吗 不 Yahoo 没有公共 API 团体 如果这样的 API 被开放 雅虎
  • Yii CDBCommand getText 显示 SQL 中的所有变量

    我正在使用 Yii 的 Yii app gt db gt createCommand 来构建 SQL 查询 为了查看 Yii 生成的 SQL 代码 我使用 CDBCommand 的 getText 方法 问题是 当我在包含参数的 SQL 代
  • 如何追踪僵尸对象崩溃?

    我的 iOS 应用程序发生了一些有线崩溃 并且它不是 100 可重现的 从崩溃日志中我可以看到无法识别的选择器 属性访问器 被发送到类型不正确的对象 很可能是僵尸 无论如何 XCode 中是否可以用来查看我是否正在尝试访问僵尸对象 Than
  • 如何存储(和使用)当前鼠标位置?

    存储当前鼠标位置 系统范围 然后 稍后 将鼠标放在该存储点的最佳方法是什么 NSEvent mouseLocation http developer apple com mac library documentation Cocoa Ref
  • Jsoup 解析和嵌套标签

    我正在学习 Jsoup 并有这个 HTML p Content p p Content p p Content p 我使用 Jsoup parse 和文档 select p 来捕获 内容 并且效果很好 但 p Content p p Con
  • Python向图像添加额外区域

    所以我有一张包含图像尺寸的表格 有多个不同尺寸的图像 66x66 400x400 等 我有一个图像示例 原始图像 其尺寸始终为 600x532 该图像上是一种产品 电视 PC 等 我必须调整该图像的大小 这不是问题 但如果我按照比例这样做
  • Linux bash 中波浪号的含义(不是主目录)

    首先 我知道 是主目录 CD 至 or 带我到主目录 然而 cd X带我去一个特别的地方 在那里X似乎是什么 在 bash 中 如果我点击 cd 然后点击选项卡 它会显示一堆可能的 X选项如 mail and postgres and ss
  • 如何计算r中两年的移动平均值

    我有一个关于并购 M As 的大数据框 900k 行 df 有四列 date 并购完成时 目标国家 被合并 收购的国家的公司 收购方 国家 收购方是哪个国家的公司 以及big corp 无论收购方是否是大公司 其中 TRUE 表示该公司很大
  • SQL:链接连接效率

    我的 WordPress 插件中有一个查询 如下所示 SELECT users U meta value AS first name M meta value AS last name FROM nwp users AS users LEF