我将如何改进这个充当规范的 7 行 Linq 查询?

2024-02-07

顶部的 BigQuery 获取一组产品和嵌套的相关表。然后,我在规范模式上进行了一次糟糕的尝试应用过滤。这是过滤器代码。查询中有三个表,我想通过嵌套在底部查询中的值来过滤顶部查询。就像我说的,这目前产生了我们想要的结果。

然而,.Contains() 为每个生成一个 SQL WHERE EXISTS() 子句。我们确实只需要一个,但我不知道如何获取内部 ID 来与外部 ID 进行比较。

from p in bigQuery                            // Root table
where ( from pp in p.LPP                      // Level 1 nested table
        where (from pv in pp.LPV              // Level 2 nested table 
               where pv.colorid == intValue   // Our filter value
               select p.id).Contains(p.id)    // Where exists
        select p.id).Contains(p.id)           // Where exists
select p;

有什么想法吗?这会按原样生成 900 行 SQL 语句,并且到目前为止我们只有一个过滤器。


from p in bigQuery
where p.LPP.SelectMany(pv => pv.LVP).Any(x => x.colorid == intValue)
select p;

据我所知,上面应该是等价的。请尝试并检查生成的 SQL 是否有效。无论如何,应该不会太遥远。

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

我将如何改进这个充当规范的 7 行 Linq 查询? 的相关文章

随机推荐

  • Angular - Prod Build 不生成唯一的哈希值

    Angular 生产构建不会在我的项目中生成唯一的哈希值 以下是构建日志截图 无法在新的 Angular cli 项目中重现此问题 似乎我的项目中存在一些问题 我正在使用角度 6 0 3 下面是 angular json schema no
  • Office 365 Rest API 读取“回复”字段

    我正在使用此处记录的其余 APIhttps msdn microsoft com office office365 APi mail rest operations https msdn microsoft com office offic
  • ARM GCC 生成函数序言

    我提到 ARM 工具链可以生成不同的函数序言 实际上 我看到两个 obj 文件 vmlinux 具有完全不同的函数序言 第一种情况如下所示 push some registers maybe fp lr lr ommited in leaf
  • 如何使用 gganimate 获得完整而不是部分的饼图

    我在制作动画饼图时遇到问题gganimate and ggplot 我每年都想吃普通的馅饼 但我的产量完全不同 您可以使用以下代码查看示例mtcars library ggplot2 library gganimate Some Data
  • 从数据框中选择每第 n 行

    我有一个数据表 想要从中提取每第五行以创建一个新表 有一个命令可以实现这个目的吗 这是我的数据示例 count Idf Nr block 1 1233 B12 2 1233 B12 3 1446 B12 4 1446 B12 5 365 B
  • Ansible 复制与同步

    使用 Ansible Synchronize 与 Copy 模块有何优缺点 据我所知 同步具有复制所具有的所有功能 但速度可能要快得多 因此我正在考虑更改所有内容以使用同步 同步的唯一缺点是需要 rsync 这在 Linux 环境中似乎相当
  • jQuery $(document).ready 函数的缩写形式

    我使用了很多 jQuery 所以我必须不断地输入 document ready函数来放置 jQuery 代码 该函数有更短的形式吗 允许使用以下三种语法 Syntax 1 document ready function Syntax 2 r
  • MySQL WHERE 过程中的条件被忽略

    我正在尝试制定一个带有参数的程序 但是当我在一个WHERE情况就好像从未存在过一样 他们只是被忽视了 DELIMITER DROP PROCEDURE IF EXISTS p CREATE PROCEDURE p IN player TEX
  • WPF如何将mousedown(命令/操作)绑定到标签

    我可以找到很多到按钮的命令鼠标绑定 但是如果我想将 mousedown 事件绑定到绑定 MVVM 模式 怎么办 我找不到答案 可能是我看不到的很小的东西 但有人可以帮助我吗 xaml
  • SQL Server 2008 R2 中的高效分页

    我想编写一个执行以下操作的存储过程 返回匹配查询的记录数 以确定向用户显示的页数 返回另一个记录集 其中包含当前页面查询中的某个记录子集 从我在 StackOverflow 上发现的另一个问题 抱歉 我丢失了链接 我发现我们是这样进行分页的
  • 在哪里可以找到有关 SharePoint 的优质编程资源? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我一直试图找到一本书籍或 Web 参考资料 让我更好地了解如何构建 测试 ASP NET 页面 控件和 Web 部件并将其部署到 Shar
  • 防止移动 unique_ptr C++11

    有什么方法可以阻止用户显式获取唯一指针的所有权 std move Make it const The unique ptr移动构造函数需要一个非常量右值引用 因此不能用 a 调用const object const unique ptr
  • Django ORM 中 select_lated 和 prefetch_lated 有什么区别?

    在 Django 文档中 select related https docs djangoproject com en stable ref models querysets select related 遵循 外键关系 在执行查询时选择其
  • 在 Python 中缩小和合并 PDF

    我正在尝试将两个 A4 PDF 页面缩小并合并为一个 A4 页面 这样如果我有的话 p1 p2 我会得到 p1 p2 作为一个新的 PDF 其中一页有两个 A5 大小的页面 类似于在纸上每页打印两页的方式 我调查过pypdf https p
  • 当文本框中未填充任何内容时,将 mvvm WPF 中的属性设置为 null

    我实现了一个文本框 它绑定到一个视图模型 例如 我在文本框中默认填写 100 但如果我将其更改为 10 则该属性始终设置正确 但是当我删除所有数字时 我希望该属性设置为空 但它只是在没有填写任何内容时不设置该值 他只是保留最后一个值 这是我
  • Django 从数据库自动完成

    我有一个这样的模型 class Baslik models Model user models ForeignKey User null True blank True title models CharField max length 5
  • 为什么 getenv() 返回非常量字符串

    我正在阅读以下文档std getenv 功能于cppreference com http en cppreference com w cpp utility program getenv它说 修改 getenv 返回的字符串会调用未定义的行
  • 什么是多字节字符集?

    术语 多字节 是指其字符可以 但不必 宽于 1 个字节的字符集 例如 UTF 8 还是指在任何情况下都宽于 1 个字节的字符集 例如 UTF 16 换句话说 如果有人谈论多字节字符集 这意味着什么 该术语含糊不清 但在我的国际化工作中 我们
  • 将多列合并为一列

    我有一个数据集如下 GN Datum Land AG GKV MTCR GKV NSGI GKV NSGII GKV WA GKV ML GKV Wert 8 11693 2012 01 05 Kenia 5A001f 159700 9 1
  • 我将如何改进这个充当规范的 7 行 Linq 查询?

    顶部的 BigQuery 获取一组产品和嵌套的相关表 然后 我在规范模式上进行了一次糟糕的尝试应用过滤 这是过滤器代码 查询中有三个表 我想通过嵌套在底部查询中的值来过滤顶部查询 就像我说的 这目前产生了我们想要的结果 然而 Contain