如何在 DataTable.Select(Expression) 中使用 SELECT GROUP BY?

2024-01-31

我尝试通过从每个组中选择第一行来删除重复的行。 例如

PK     Col1     Col2
1        A        B
2        A        B
3        C        C
4        C        C

我想要一个回报:

PK     Col1     Col2
1        A        B
3        C        C

我尝试了以下代码,但它不起作用:

DataTable dt = GetSampleDataTable(); //Get the table above.
dt = dt.Select("SELECT MIN(PK), Col1, Col2 GROUP BY Col1, Col2);

DataTable's Select方法仅支持简单的过滤表达式,例如{field} = {value}。它不支持复杂的表达式,更不用说 SQL/Linq 语句了。

但是,您可以使用 Linq 扩展方法来提取一组DataRow然后创建一个new DataTable.

dt = dt.AsEnumerable()
       .GroupBy(r => new {Col1 = r["Col1"], Col2 = r["Col2"]})
       .Select(g => g.OrderBy(r => r["PK"]).First())
       .CopyToDataTable();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 DataTable.Select(Expression) 中使用 SELECT GROUP BY? 的相关文章

  • 使用具有现有访问令牌的 Google API .NET 客户端

    用例如下 移动应用程序正在通过 Google 对用户进行身份验证 并且在某些时候 我们需要将用户的视频发布到他的 YouTube 帐户 出于实际原因 实际发布应该由后端完成 已经存储在那里的大文件 由于用户已经通过应用程序的身份验证 因此应
  • 如何创建可以像 UserControl 一样编辑的 TabPage 子类?

    我想创建一个包含一些控件的 TabPage 子类 并且我想通过设计器来控制这些控件的布局和属性 但是 如果我在设计器中打开子类 我将无法像在 UserControl 上那样定位它们 我不想创建一个带有 UserControl 实例的 Tab
  • 32 位应用程序的特征最大矩阵大小

    所以 我正在寻找Eigen http eigen tuxfamily org index php title Main Page当我尝试声明大于 10000x10000 的矩阵时 包崩溃 我需要声明一个像这样的矩阵 可靠地大约有 13000
  • Clang 编译器 (x86):80 位长双精度

    我正在尝试在 x86 Windows 平台上使用本机 80 位长双精度 海湾合作委员会选项 mlong double 80 https gcc gnu org onlinedocs gcc x86 Options html似乎不适用于 cl
  • JSON 数组到 C# 列表

    如何将这个简单的 JSON 字符串反序列化为 C 中的列表 on4ThnU7 n71YZYVKD CVfSpM2W 10kQotV 这样 List
  • ASP MVC:服务应该返回 IQueryable 的吗?

    你怎么认为 你的 DAO 应该返回一个 IQueryable 以便在你的控制器中使用它吗 不 您的控制器根本不应该处理任何复杂的逻辑 保持苗条身材 模型 而不是 DAO 应该将控制器返回给视图所需的所有内容 我认为在控制器类中看到查询 甚至
  • 如何将“外部模板”与由同一类中的模板化成员使用的嵌套类一起使用?

    首先 一些背景信息 我尝试以 Herb Sutter 在他的解决方案中介绍的方式使用 Pimpl 习语 得到了 101 http herbsutter com gotw 101 这在头文件中看起来像这样 include pimpl h h
  • 将数据打印到文件

    我已经超载了 lt lt 运算符 使其写入文件并写入控制台 我已经为同一个函数创建了 8 个线程 并且我想输出 hello hi 如果我在无限循环中运行这个线程例程 文件中的o p是 hello hi hello hi hello hi e
  • Azure 事件中心 - 按顺序接收事件

    我使用下面的代码从 Azure Event Hub 接收事件 https learn microsoft com en us azure event hubs event hubs dotnet framework getstarted s
  • 生产代码中的 LRU 实现

    我有一些 C 代码 需要使用 LRU 技术实现缓存替换 目前我知道两种实现LRU缓存替换的方法 每次访问缓存数据时使用时间戳 最后比较替换时的时间戳 使用缓存项的堆栈 如果最近访问过它们 则将它们移动到顶部 因此最后底部将包含 LRU 候选
  • 如何在c#中的内部类中访问外部类的变量[重复]

    这个问题在这里已经有答案了 我有两个类 我需要声明两个类共有的变量 如果是嵌套类 我需要访问内部类中的外部类变量 请给我一个更好的方法来在 C 中做到这一点 示例代码 Class A int a Class B Need to access
  • 当“int”处于最大值并使用 postfix ++ 进行测试时,代码定义良好吗?

    示例 未定义行为的一个示例是整数溢出的行为 C11dr 3 4 3 3 int溢出是未定义的行为 但这是否适用于存在循环的以下内容 并且不使用现在超出范围的副作用i 特别是 这是否后缀增量规格帮助 结果的值计算在副作用之前排序 更新操作数的
  • 当我“绘制”线条时,如何将点平均分配到 LineRenderer 的宽度曲线?

    我正在使用线条渲染器创建一个 绘图 应用程序 现在我尝试使用线条渲染器上的宽度曲线启用笔压 问题在于 AnimationCurve 的 时间 值 水平轴 从 0 标准化为 1 因此我不能在每次添加位置时都在其末尾添加一个值 除非有一个我不知
  • g++ 对于看似不相关的变量“警告:迭代...调用未定义的行为”

    考虑以下代码strange cpp include
  • 剪贴板在 .NET 3.5 和 4 中的行为有所不同,但为什么呢?

    我们最近将一个非常大的项目从 NET Framework 3 5 升级到 4 最初一切似乎都工作正常 但现在复制粘贴操作开始出现错误 我已经成功制作了一个小型的可复制应用程序 它显示了 NET 3 5 和 4 中的不同行为 我还找到了一种解
  • 什么是 __declspec 以及何时需要使用它?

    我见过这样的例子 declspec在我正在阅读的代码中 它是什么 我什么时候需要使用这个构造 这是 Microsoft 对 C 语言的特定扩展 它允许您使用存储类信息来赋予类型或函数属性 文档 declspec C https learn
  • 使用 C# 从 DateTime 获取日期

    愚蠢的问题 给定日期时间中的日期 我知道它是星期二 例如我如何知道它的 tue 2 和 mon 1 等 Thanks 您正在寻找星期几 http msdn microsoft com en us library system datetim
  • 双精度类型二维多维数组的 pinvoke 编组作为 c# 和 c++ 之间的输入和输出

    我有以下我正在尝试解决的双物质类型的 2d 多维数组的 c 和 c pinvoke 编组 我已经查看了以下热门内容以获得我目前拥有的内容使用双精度数组进行 P Invoke 在 C 和 C 之间编组数据 https stackoverflo
  • Googletest:如何异步运行测试?

    考虑到一个包含数千个测试的大型项目 其中一些测试需要几分钟才能完成 如果按顺序执行 整套测试需要一个多小时才能完成 通过并行执行测试可以减少测试时间 据我所知 没有办法直接从 googletest mock 做到这一点 就像 async选项
  • 匿名结构体作为返回类型

    下面的代码编译得很好VC 19 00 23506 http rextester com GMUP11493 标志 Wall WX Za 与VC 19 10 25109 0 标志 Wall WX Za permissive 这可以在以下位置检

随机推荐

  • 检查 Discord 机器人是否在线

    我试图做到这一点 以便我的机器人一次只能连接到 Discord 而另一个仅在另一个未连接时才连接 我怎样才能做到这一点 我在用着不和谐 py https pypi org project discord py 另外 如果可能的话 我希望它能
  • 创建和使用带有代理对的字符串

    我必须使用上面的代码点0FFFF 特别是数学脚本字符 并且尚未找到有关如何执行此操作的简单教程 我希望能够 a 创建Strings 具有高代码点 并且 b 迭代其中的字符 自从char不能保留这些点我的代码如下所示 Test public
  • Colorbox 中的 CKEditor 加载不起作用 [ Google Chrome ]

    我在我的项目中使用 Colorbox 我已将 CKEditor 集成到 colorbox 中 它在所有浏览器中工作正常 但在 Google Chrome 中存在一个小问题 编辑器将在第一次单击时正确打开 关闭弹出窗口并在不加载页面的情况下第
  • 从插入触发器后调用存储过程

    也许是一个愚蠢的问题 如果我从插入后触发器 T SQL 调用存储过程 那么如何获取 刚刚插入 数据的值 例如 CREATE TRIGGER dbo MyTrigger ON dbo MyTable AFTER INSERT AS BEGIN
  • 将 NSString 转换为 cString 以与 CGContextShowTextAtPoint 一起使用

    我正在使用 CGContextShowTextAtPoint 绘制一个字符串 因此我需要将我想要绘制的 NSString 转换为 c 字符串 不幸的是 诸如欧元货币符号之类的特殊符号未正确显示 CGContextSelectFont cur
  • 合并霍夫线

    我的代码卡在了某一点 首先简短说明一下我正在做的事情 作为输入 有一张地板的图像 使用 Canny 和 HoughLinesP 算法 我想将整面墙分割成许多 小 部分 正如您在这里看到的那样 同时理想的输出 这里没有精明 我想得到 两条红线
  • 刷新 Spotify 令牌 iOS SDK 时遇到问题

    我对如何使用刷新令牌服务感到困惑 在我的应用程序中有一个包含许多播放列表的部分 当用户单击播放列表时 它会运行以下代码 func checkAuth print checking auth let auth SPTAuth defaultI
  • Node JS请求模块不发送表单数据

    我正在使用 Node js 中的 请求 模块发出发布请求 如下所示 request post url http localhost 4004 api v1 notifications post form msg msg userID use
  • Vuejs 元素值变化事件?

    我有一个元素想要观察这样的变化 span class lower 50 span 用 vuejs 可以干净地做到这一点吗 我尝试查看文档 但找不到类似的内容 我想在 VueJs 中每当 50 更改为其他内容时启动一个自定义事件 你有没有尝试
  • SQL Server 2005 中外键与复合主键的关系

    我有两张桌子 Table1 FileID BundledFileID Domain and Table2 FileID FileType FileName 表2中FileID and FileType是复合主键 我想创建一个外键关系Tabl
  • angularjs ng-options嵌套json数据

    我正在为我的网络应用程序使用 AngularJS 我的目标是使用两个下拉列表ng options 第一个下拉列表显示国家 地区列表 另一个给出所选国家 地区的语言首选项 作为 AngularJS 的新手 我能够显示数据 但整个对象显示为单个
  • 获取 Composable 中状态的先前值 - Jetpack Compose

    假设我的代码如下所示 Composable fun ExampleList val tickers by exampleViewModel tickers observeAsState LazyColumn items items tick
  • 如何禁止临时工

    对于 Foo 类 有没有办法在不给它命名的情况下禁止构造它 例如 Foo hi 并且仅在您给它一个名称时才允许它 如下所示 Foo my foo hi 第一个的生命周期只是语句 第二个是封闭块 在我的用例中 Foo正在测量构造函数和析构函数
  • iOS 中 opengl 顶点数据的对齐有多重要

    OpenGL ES 编程指南讨论了应该避免未对齐的顶点数据 并给出了将数据对齐到 4 字节块的示例 OpenGL ES 编程指南 http developer apple com library ios documentation 3DDr
  • 泛型:确保参数的类型相同

    我有以下方法 protected
  • 在谷歌折线图中的同一行上组合实线和虚线格式

    我在我的应用程序中使用谷歌折线图来显示当前值和预测值 我收到的数据来自数据库 当前值和预计值 我希望看到直到当前分数的实线和未来预计分数的虚线 请让我知道如何实现这一目标 Example 匹配 我5月10日的当前费用是5000美元 到10月
  • 在 Mathematica 中使用图形通过交叉替换磁盘

    考虑以下列表 dalist 47 9913 11 127 208 47 5212 10 3002 208 49 7695 9 96838 160 48 625 12 7042 436 这些是屏幕上眼睛注视的坐标 在每个子列表中 1是 X 坐
  • 使用窗口关闭按钮完全关闭 OS X 应用程序

    当用户在运行时使用应用程序关闭文档窗口时 我需要完全关闭我的应用程序 目前 当他们单击窗口时 应用程序保持打开状态并显示其菜单栏 我阅读了适用于 iOS 的这篇文章 并在 plist 文件中添加了一个条目 http developer ap
  • 如何初始化静态 std::atomic 数据成员

    我想为名为的类生成标识符order以线程安全的方式 下面的代码无法编译 我知道原子类型没有复制构造函数 我认为这解释了为什么这段代码不起作用 有人知道如何让这段代码真正发挥作用吗 有替代方法吗 include
  • 如何在 DataTable.Select(Expression) 中使用 SELECT GROUP BY?

    我尝试通过从每个组中选择第一行来删除重复的行 例如 PK Col1 Col2 1 A B 2 A B 3 C C 4 C C 我想要一个回报 PK Col1 Col2 1 A B 3 C C 我尝试了以下代码 但它不起作用 DataTabl