多列上的 LINQ COUNT

2023-11-20

如果我有一个包含标题列和包含 1 或 NULL 的 3 位列(f1、f2、f3)的表,我将如何编写 LINQ 以返回标题以及包含 1 的每个位列的计数?我正在寻找与此 SQL 查询等效的内容:

SELECT title, COUNT(f1), COUNT(f2), COUNT(f3) FROM myTable GROUP BY title

我正在寻找“最好”的方法来做到这一点。当你查看底层 SQL 时,我提出的版本会浸入表 4 次,所以它太慢了。


如果您想坚持使用 LINQ 查询并使用匿名类型,则查询可能如下所示:

 var query = 
      from r in ctx.myTable
      group r by r.title into rgroup
      select new
      {
          Title = rgroup.Key,
          F1Count = rgroup.Count(rg => rg.f1 == true),
          F2Count = rgroup.Count(rg => rg.f2 == true),
          F3Count = rgroup.Count(rg => rg.f3 == true)
      };

诀窍是要认识到您想要计算 true 字段的数量(它被映射为可为空的布尔值),您可以使用 Count 运算符和谓词来完成此操作。有关 LINQ 组运算符的更多信息,请参见此处:标准 LINQ 运算符

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

多列上的 LINQ COUNT 的相关文章

随机推荐

  • 如何为 java HttpURLConnection 流量启用线路日志记录?

    我用过雅加达公共 HttpClient在另一个项目中 我也想要同样的电线记录输出但使用 标准 HttpUrlConnection 我用过Fiddler作为代理 但我想直接从 java 记录流量 捕获连接输入和输出流的内容是不够的 因为 HT
  • 如何根据 Wavefront (.obj) 文件中给出的纹理索引对纹理位置进行排序?

    我目前正在尝试为 OpenGL 项目制作一个 Wavefront obj 文件加载器 我当前使用的方法是逐行分离向量 std vectors 中的顶点位置 纹理位置和法线位置 并且我将它们的索引 顶点 纹理和法线索引 存储在三个单独的文件中
  • Kivy ObjectProperty 更新标签文本

    我正在创建一个 kivy 用户界面来显示由我编写为标准 python 对象的数据模型生成的值 本质上 我希望用户能够按下一个按钮 这将更改底层数据模型 并且此更改的结果将自动更新和显示 据我了解 这可以使用 kivy 属性 在本例中为 Ob
  • 允许Html不工作

    我正在构建一个内容管理系统 以允许我以外的人更新网站上的内容 我有一个前端 HTML 表单 它通过 AJAX 将数据发送到控制器 CONTROLLER ValidateInput false public void CarAJAX CarA
  • 获取文本框值的VBA/宏代码

    Sub CopyRandomRows Windows sample rnd xlsm Activate Rows 1 1 Select Selection Copy Application CutCopyMode False Selecti
  • AWS/EKS:从 ALB 频繁收到 504 网关超时错误

    我正在使用 EKS 部署服务 入口在 alb ingress controller 之上运行 总而言之 我有大约 10 个单个 Pod 的副本 具有单一服务类型NodePort它将流量转发给他们 副本在 10 个节点上运行 使用 eksct
  • 检测用于 HttpClient POST 或 GET 调用的 TLS 版本

    我正在尝试检索 TLS 版本信息 下面的代码使用 HttpClient 成功进行了 HTTP GET 调用 我缺少什么 我在哪里可以从 HttpClient 获取 TLS 版本信息 我正在做与建议相同的事情协商了哪个 TLS 版本 但这是特
  • 获取已打印的python文本内容

    假设我打印以下代码 print THE RUSSIAN PEASANT ALGORITHM times two values x and y together x int raw input raw input x y int raw in
  • 如何使用 jQuery 加载本地文件? (带有文件://)

    有没有办法使用 jQuery 从数据文件 例如 JSON js 文件 加载数据 eg get file C objectData js function alert Load was performed 目前 JQuery 似乎没有执行简单
  • 将 Graph API 中 Facebook 访问令牌的有效期延长至 2 个月以上

    我正在使用 python 开发 Facebook 页面墙贴自动化 我通过使用自动在我拥有的 Facebook 页面上发帖Facebook 图表 API 帖子所以我通过发送 HTTP POST 请求来做到这一点https graph face
  • System V IPC 与 POSIX IPC

    两者有什么区别System V IPC and POSIX IPC 为什么我们有两个标准 如何决定使用哪些IPC功能 两者都有相同的基本工具 信号量 共享内存和消息队列 它们提供的界面与这些工具略有不同 但基本概念是相同的 一个显着的区别是
  • 如何转义 WPF 绑定路径中的斜杠字符,或者如何解决?

    我刚刚学习 WPF 我将一个表从数据源拖到一个为每列生成 XAML 的窗口上 其中一些列的名称会导致以下情况
  • 如何反汇编原始 16 位 x86 机器代码?

    我想反汇编我拥有的可启动 x86 磁盘的 MBR 前 512 字节 我已使用以下命令将 MBR 复制到文件中 dd if dev my device of mbr bs 512 count 1 对可以反汇编该文件的 Linux 实用程序的任
  • 在android中上传多个图像到服务器的最快方法

    我有多个图像要在服务器中上传 并且我有一种将单个图像上传到服务器的方法 现在我使用此方法通过为每个图像创建循环来发送多个图像 有没有最快的方法将多个图像发送到服务器 提前致谢 public int imageUpload GroupInfo
  • Xlib:XGetWindowAttributes 始终返回 1x1?

    我想要当前聚焦窗口的宽度和高度 窗口的选择就像一个魅力 而高度和宽度是always返回 1 include
  • 在虚拟列表达式中连接数字会引发 ORA-12899: 值对于列来说太大

    当我给出这个时answer昨天的一个问题 我建议使用虚拟栏目用于计算值而不是手动更新它 我自己做了一个测试 发现了虚拟列表达式在执行时所需的数据大小的问题连接 two NUMBER类型列 不过 连接两个字符时没有问题 数据库版本 SQL g
  • Ruby 中的块和过程

    我已经开始学习 Ruby 读了一些教程 甚至买了一本书 Programming Ruby 1 9 The Pragmatic Programmers Guide 我遇到了一些我以前在任何课程中都没有见过的新东西 我知道的其他语言 我是一名
  • Android从多页webview创建pdf文档

    我使用 Android 的 PdfDocument 框架 link 从我的 webview 内容创建一个 pdf 文档 pdf 创建得很好 但它只是一页文档 当网络视图内容很大时 我需要创建一个多页文档 我所需要的只是将网页内容拆分为多个页
  • 触发 $XCS_PRODUCT 后持续集成 Xcode Server 未设置

    我有一个在 Xcode 6 4 下运行良好的机器人 后触发脚本使用以下路径自动上传 IPA XCS OUTPUT DIR XCS PRODUCT 然而 即使从头开始重做机器人之后 似乎 XCS PRODUCT 始终为空 XCS OUTPUT
  • 多列上的 LINQ COUNT

    如果我有一个包含标题列和包含 1 或 NULL 的 3 位列 f1 f2 f3 的表 我将如何编写 LINQ 以返回标题以及包含 1 的每个位列的计数 我正在寻找与此 SQL 查询等效的内容 SELECT title COUNT f1 CO