分层查询需要拉动孩子、父母和兄弟姐妹

2024-03-08

现在可以提取数据,但我想知道是否有更好的方法来优化大型数据集的查询。

http://sqlfiddle.com/#!4/0ef0c/5 http://sqlfiddle.com/#!4/0ef0c/5

所以基本上我希望能够为查询提供给定的组织 ID,并让它递归地拉出它的父母、孩子、兄弟姐妹以及叔叔阿姨。然后拉取与该组织层次结构关联的任何活动。

Org1 是顶级组织,但它可能有也可能没有空父组织。

基本上,我正在执行向上和向下查询来拉动孩子和父母,但似乎只能通过添加另一个查询来获取兄弟姐妹。最后在朋友的帮助下进行了另一个查询,但它在大数据集(4-5k 的活动)上的性能非常低。

任何见解将不胜感激。


如果您的组织。结构是严格分层的,那么你可以使用这种方法:http://www.ibase.ru/devinfo/DBMSTrees/sqltrees.html http://www.ibase.ru/devinfo/DBMSTrees/sqltrees.html

缺点是每次更新组织结构时都必须更新索引。然而,组织结构通常被更频繁地读取然后被修改。所以恕我直言,这应该可以解决问题。

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

分层查询需要拉动孩子、父母和兄弟姐妹 的相关文章

随机推荐

  • 如何将“$modalInstance”注入控制器?

    在我的应用程序中 当我发现用户未登录后 我想打开一个模式对话框 when showtask id templateUrl Home Template showtask resolve ShowTaskCtrl resolve access
  • 为什么在 Python 中隐式检查是否为空? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 块的逆是什么:以 rebol / red 加载文本

    假设我有一些 rebol red 代码 如果我加载源文本 我会得到一个块 但是如何从块中取回源文本 我尝试了表单块 但它没有返回源文本 text Red Title Red Pretty Printer out none output te
  • Javascript 中的会话值

    如何在 JavaScript 中读取和写入会话值 如果您谈到服务器端会话值 除了以某种方式与服务器通信之外没有其他方法 例如 使用异步回调 您可以使用某种方法读取 写入它们 对于客户端会话变量的模拟 您可能想看看here http www
  • 无法通过代理推送到github

    请帮忙 我正在尝试从我的工作场所推送到 github 我试过这个 myuser somewhere c sites mrquery master git remote add origin ssh email protected cdn c
  • 创建 React 应用程序已部署,但 github 页面显示来自 manifest.json 的 404

    谁能帮我找出清单 json 文件的问题 我将一个简单的入门 create react 应用程序部署到 github 页面 并通过命令行显示该应用程序已发布 但当我转到 github 页面时页面未加载 当我查看控制台时 我收到来自 manif
  • 单例类方法的并发调用

    我有一个单例类 public class Singleton private static Singleton istance null private Singleton public synchronized static Single
  • 推荐一个用 C# 读取 Excel 文件的教程 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有 C 经验 但使用 C 读取 Excel 内容的经验有限 我的任务非常简单 只需读取 Excel 文档的每一行的每一列并检索它们的值
  • 重新调度键盘事件

    正在开发 Angular TypeScript 应用程序 其中我们有一个自定义的基本文本编辑器 尝试适当地处理用户突出显示的选择然后按下按键以替换该选择的情况 为了解决这个问题 我们需要在插入其预期内容之前正确删除他们选择的 隐藏 组件 我
  • 间接参数化时如何注释request.param?

    In the 间接参数化示例 https docs pytest org en stable example parametrize html indirect parametrization我想输入提示request param表示特定类
  • 字符串中至少一定数量的数字的正则表达式

    当用户提交表单时 我需要确保输入至少包含最小数量的数字 问题是我不知道输入的格式 数字可能不会连续 并且可能由字母 标点符号 空格等分隔 我不关心其余的字符串 我想用 RegularExpressionValidator 检查这一点 但我不
  • Android切换到gradle不编译JRE7代码功能

    我将 Android 应用程序移至 Android Studio 而没有切换到 Gradle 现在我想转到 Gradle 该应用程序在切换到 Gradle 之前在 Android Studio 中进行编译 但现在我已经设置好 Gradle
  • 使用 POSIX API 读取文件

    考虑以下代码段 用于将文件内容读入缓冲区 include
  • Google 日历 API 错误 - “API 密钥无效。请传递有效的 API 密钥。”,

    从昨天起我开始从 google rest api 收到错误 error code 400 message API key not valid Please pass a valid API key errors message API ke
  • 推/拉类在网格系统中做什么?

    当我查看很多 CSS 网格系统和框架时 它们通常有一个带有百分比宽度的标准列和行设置 例如这样的事情 标准网格列 col 10 width 83 33333 width calc 100 12 10 width webkit calc 10
  • 重用 SQL Server 公用表表达式的结果

    我有一个查询 使用公用表表达式检索页面的所有模块和子模块 是否可以多次使用 cte 的结果 example WITH top level modules AppContentModuleID SortIndex ContentHolderN
  • V8 JavaScript 对象与二叉树

    有没有更快的方法来搜索数据JavaScript 特别是关于V8 via node js 但没有 c c 模块 比使用JavaScript Object 这可能已经过时了 https developers google com v8 desi
  • 使用 XSL 显示 XSD 定义的属性默认值

    我认为这应该很容易找到 但经过一番搜索后 我发现这可能最好明确定义 在我的 XSD 中 我定义了一个从字符串派生的枚举 在复杂类型中 我定义了引用此枚举的属性 并具有默认值 在我的 XSL 中 我希望为未显式设置属性的元素显示该属性的默认值
  • 如何将vue.js中视频元素的paused属性绑定到可以显示/隐藏播放按钮的函数

    如果视频暂停 即使视频缓冲区有足够的数据 我们也需要在视频窗口上显示播放按钮 这会在 Safari 浏览器中发生 因为 Safari 不允许在没有用户干预的情况下播放视频 我添加了暂停事件的事件侦听器 代码如下 请注意 这是 vue文件
  • 分层查询需要拉动孩子、父母和兄弟姐妹

    现在可以提取数据 但我想知道是否有更好的方法来优化大型数据集的查询 http sqlfiddle com 4 0ef0c 5 http sqlfiddle com 4 0ef0c 5 所以基本上我希望能够为查询提供给定的组织 ID 并让它递