如何根据多个字段选择不同的行

2024-04-18

我有一个表,其中包含 MSSQL 数据库中一系列事件的数据:

ID  Name                                                      Date        Location                         Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1   Seminar Name 1                                            2013-08-08  A Location Name                  16
2   Another Event Name                                        2013-07-30  Another Location                 18
3   Event Title                                               2013-08-21  Head Office                      94
4   Another Title                                             2013-08-30  London Office                    18
5   Seminar Name 2                                            2013-08-27  Town Hall                        19
6   Title                                                     2013-08-20  Somewhere Else                   196
7   Fake Seminar For Testing                                  2013-08-25  Fake Location                    196

希望您可以看到该表包含许多由我们应用程序中的多个用户拥有的事件。我试图弄清楚是否有一个查询可以用来为每个用户选择最近发生的事件。我认为显示我想要的内容的最简单方法是显示我正在寻找的理想结果表(基于今天的日期):

ID  Name                                                      Date        Location                         Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1   Seminar Name 1                                            2013-08-08  A Location Name                  16
2   Another Event Name                                        2013-07-30  Another Location                 18
3   Event Title                                               2013-08-21  Head Office                      94
5   Seminar Name 2                                            2013-08-27  Town Hall                        19
6   Title                                                     2013-08-20  Somewhere Else                   196

我目前能想到的最好的查询是:

SELECT DISTINCT Owner, Date, ID FROM Seminars
GROUP BY Owner, Date, ID ORDER BY Date

它并没有真正做我想做的事情,我认为真正的解决方案会比这更复杂一点,因为我也需要根据今天的日期进行选择。


WITH CTE
AS
(
   SELECT *,
     ROW_NUMBER() OVER(PARTITION BY Owner 
                       ORDER BY Date DESC) AS RN
   FROM tablename
)
SELECT ID, Name, Date, Location, Owner
FROM CTE
WHERE RN = 1;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何根据多个字段选择不同的行 的相关文章

  • SQL Server Management Studio 2005 或 2008 是否有 SVN 插件? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 正在寻找一个 源代码控制 插件来将 SSMS 与 Subversion SVN 集成 有人知道其中一个吗 Redgate 的解决方案似乎是
  • 对所有列实施搜索过滤器

    我在 PostgreSQL 中找到了这个搜索示例http www postgresql org docs current interactive textsearch tables html TEXTSEARCH TABLES SEARCH
  • 使用 T-SQL FOR XML PATH 删除空 XML 节点

    我在用着FOR XML PATH从 SQL Server 2008R2 中的表构造 XML XML 必须按如下方式构建
  • 如何向多个涉及外键依赖的表插入数据(MySQL)

    我正在寻找将数据插入多个 MySQL 表的最佳实践方法 其中某些列是外键依赖项 这是一个例子 Table contacts contact id first name last name prof id zip code 联系人 表有主键
  • 消息传递功能创建 Sql 查询和数据库视图

    鉴于以下情况 我需要能够获取给定用户参与的所有线程的列表 首先按最新消息排序 仅显示最新消息 每个线程 1 条消息 这是上面的 SQL 查询 SELECT Message MessageId Message CreateDate Messa
  • Java - oracle.jdbc.dcn.DatabaseChangeEvent - 获取更改的行

    我正在使用 oracle jdbc dcn DatabaseChangeEvent 来从 Oracle DB 获取事件通知 public class TListener implements DatabaseChangeListener p
  • ASP.NET CLR 未启用

    当我运行我的应用程序时 在新安装的 ASP Net 和 SQL Server 上出现以下错误 Execution of user code in the NET Framework is disabled Enable clr enable
  • 您没有权限使用批量加载语句错误

    我正在尝试将图像插入到 VARBINARY MAX 列中 我收到此错误 您无权使用批量加载语句 这是我的代码 INSERT INTO Stickers Name Category Gender ImageData SELECT Red Dr
  • 检测递归查询中的循环

    我的 PostgreSQL 数据库中有一个有向图 节点和循环之间可以有多个路径 create table edges from int to int insert into edges values 0 1 1 2 2 3 3 4 1 3
  • 安装 SSDT VS 2015 17.3 和 17.4 时出错 - 系统找不到指定的文件

    我已在 VS 2017 上成功安装 SSDT 2017 但是 我们有一些较旧的 SSIS 包和 SSRS 报告 我需要 VS SSDT 2015 我安装了 VS 2015 Enterprise 我正在尝试安装 SSDT 2015 17 3
  • 使用nodes()方法在SQL中展平分层XML

    我有一个存储过程 它采用 XML 文档作为参数 其结构类似于以下内容
  • SQL CLR 内的 WCF 客户端

    我知道它不受支持 而且我知道这甚至不是一个好主意 但是 我希望在 SQL 表值函数中拥有一个 WCF 客户端 我 看似 注册了正确的程序集 但在运行我的客户端时 我收到 WCF 错误 Msg 6522 Level 16 State 1 Li
  • 带汇总总计和小计

    我有一个脚本可以生成几乎已经存在的结果集 我正在尝试获取小计和总计 我在年份栏中得到了小计 在最后得到了总计 我的目标是让最终结果显示 总计 而不是小计 请注意 由于汇总函数 我的最后一行 位置 也返回为空 SELECT YEAR COUN
  • 在 SQL Server 中增加一个整数

    菜鸟问题在这里 每次我更改 SQL Server 2008 R2 表中的某个记录时 我都想增加一条 RevisionId 记录 为此 我使用以下语法 UPDATE TheTable SET RevisionId SELECT Revisio
  • Oracle 求两个时间戳的平均值

    我不明白这有多难 但我似乎无法在任何地方找到解决方案 它是针对日期完成的 但我看不到让它适用于时间戳 我正在尝试做 select avg last timestmp ref timestmp as average from param 它一
  • 如何在 postgresql 的“tablefunc”查询中包含空值?

    我正在尝试使用crosstab http www postgresql org docs 9 1 static tablefunc html函数于postgresql创建一个pivot table 但是 我很难理解如何在查询中构建 SQL
  • 使用用户定义的表类型在 SQL 中插入和更新

    以下是我创建的新数据类型 CREATE TYPE dbo UpdateHotelTableType AS TABLE ID int NULL HotelID int NULL FromDate datetime NULL 以下是我使用上述数
  • 如何选择非“唯一”行

    我有下表 我必须从中获取非唯一行 id idA infos 0 201 1899 1 205 1955 2 207 1955 3 201 1959 我想获取该列的所有行infos 具有相同的idA至少有两行的值 上表的查询输出必须是 inf
  • 何时在 SQL 语句中使用单引号?

    我知道当我处理 TEXT 类型的数据时应该使用它 我猜是那些回退到 TEXT 的数据 但这是唯一的情况吗 Example UPDATE names SET name Mike WHERE id 3 我正在用 C 编写 SQL 查询自动生成
  • 抑制SQL Server SSDT中的一些警告

    In SQL Server 数据工具 http msdn microsoft com en us library hh272686 我想抑制某些但不是全部 SQL71502 的出现 具有对对象的未解析引用 我知道我可以通过项目属性 构建 抑

随机推荐

  • 默认情况下.NET XmlIgnore?

    有没有办法让 XmlSerializer 默认忽略所有成员 除非我另有说明 我有一个基类和几个带有大量成员的派生类 但大多数我不想被序列化 只有少数几个可以接受序列化 不 你不能这样做 XmlSerializer 使用 选择退出 过程 它将
  • Google Play 服务会更新正在运行的应用程序吗?

    我正在 Google Play 上发布一个应用程序 该应用程序需要自动更新 该应用程序适用于信息亭 因此将在很长一段时间内保持打开和运行状态 而无需重新启动应用程序或重新启动设备 我的问题 Google Play 会更新当前正在运行的应用程
  • 使用列数可视化线图

    我有个问题 我有两列toDate and fromDate 我想直观地看到它们之间的差异linechart x 轴应该是月份 例如 1 2 3 4 等 y 轴应该是月份的计数 最后这应该是由what 不幸的是我没有得到想要的输出 数据框 i
  • 分割字符串。获取拆分 SQL Server 2005 的第一个值

    我有一张桌子叫TableReason有一个名为Reason Reason数据类型是varchar 100 并包含这样的值2 2 22 33 0 2对于一排 我需要为此表编写一个更新语句来完成 只需要用逗号分割的第一个值 即 只需要 2 个
  • mvc3 Ajax.ActionLink 和延迟 LoadingElementId 显示

    我有一个进度 div 它绝对位于网页顶部 当我单击 Ajax ActionLink 时 有时当请求 响应短暂时 我会看到它在顶部闪烁 如何添加延迟以使进度横幅在 500 毫秒内不显示 谢谢 这是工作代码 var showProgress f
  • 如何从 SwiftUI 中的列表获取屏幕行?

    我想放一个Text对于列表中的每个可见 屏幕边界内 行 其当前索引在所有可见行中 我这里有一个例子 如果我有一个一次显示 3 行的列表 并且最初我希望它显示如下 A 0 B 1 C 2 如果我向下滚动列表 A 走出屏幕 那么就会像 B 0
  • 如何仅通过 DynamoDB 中组合键的一部分进行查询?

    比方说 我有User正在写评论Products 用户和产品是具有自己的 id 的独立实体 Review是一个复合实体 由以下组成userId and productId 我创建了一个表review在 DynamoDB 中同时具有userId
  • 如何在对象的构造函数完成后立即触发事件?

    研究告诉我 从构造函数本身引发事件是不可行的 因为对象可能没有完全初始化 那么构造函数触发后我可以在哪里触发事件 您可以做的一件事是添加一个方法来处理其他后期任务 Friend Class FooBar Public Sub New you
  • 此计算机上未安装 Windows PowerShell 管理单元“Microsoft.Sharepoint.Powershell”?

    我是使用 powershell 的新手 我已经尝试解决这个问题几个小时了 但仍然无法使其工作 先决条件 使用 Windows 10 以管理员身份运行 Powershell ISE 但是当我使用 Add PSSnapin WebAdminis
  • Python VLC 实例全屏不起作用

    我对 Python 有点陌生 正在为连接运动传感器的 Raspberry Pi 开发一个应用程序 这个想法是把这个 Raspberry 放在一个房间里 在运动检测时 视频开始全屏播放 视频播放完毕后 我想让设备休眠 10 分钟 然后再次激活
  • Android Renderscript - 在 Renderscript 中旋转 YUV 数据

    根据我的讨论Camera2 api Imageformat yuv 420 888 旋转图像上的结果 https stackoverflow com questions 44652828 camera2 api imageformat yu
  • Jquery悬停淡入/淡出问题

    http www izrada weba com orso http www izrada weba com orso将鼠标悬停在链接 NENATKRIVENA TERASA 上时 子菜单和图像一起淡入 子菜单使用一些下载的脚本淡出 上面的
  • C++递归求数组最小值

    我有一个 C 编程类的作业 要求编写一个不使用静态变量的递归函数 原型如下 int findmin const int a int n 我的解决方案有效 对于非常小的数组 但是我认为 2 n 复杂性过高并且可以改进 在指定的标准内是否可以进
  • Plotly Dash 回调 | SchemaLengthValidationError - 预期 7,收到 8 或 Dash 回调的“输出”中使用了不存在的对象

    目标 再追加 1 个Output list Updates在帖子底部 我想要output marker symbol 从每个trace dict as line marker to a Plot在本地主机前端 发生错误是因为我还没有Outp
  • 如何将表单输入值传递给php函数

    我想写一个php页面 其中有一个html表单 我想将表单的所有输入 例如数字 发送到 php 函数 而不是 javascript 函数 我这样做是为了隐藏我的 javascript 函数代码 如何将输入值发送到 php 函数 是否可以通过以
  • 如何在 R 中使用“grep”反向引用?

    我正在寻找一种在 R 中使用正则表达式返回引用的优雅方法 让我解释一下 假设我想查找以月份名称开头的字符串 x lt c May 1 2011 30 June 2011 grep May June x value TRUE 1 May 1
  • 当它单独存在时,“未签名”意味着什么? [复制]

    这个问题在这里已经有答案了 我遇到了一些 C 代码 它自己声明了一个变量 无符号 如下所示 unsigned crc 0 我认为这很奇怪 因为我期望这里有一个显式的变量类型 令我惊讶的是没有任何编译器警告或错误 MDK Lite 5 12
  • 使用 Swift 2 进行 Base64 编码/解码

    我的代码在 Xcode 6 4 和 Swift 1 2 上运行良好 var imageData UIImageJPEGRepresentation firstImageView image 0 2 let base64String imag
  • 是否可以在Java中有效地实现seqlock?

    Another question https stackoverflow com q 14660529 149138让我想知道是否seqlock http en wikipedia org wiki Seqlock可以通过Java中的易失性
  • 如何根据多个字段选择不同的行

    我有一个表 其中包含 MSSQL 数据库中一系列事件的数据 ID Name Date Location Owner 1 Seminar Name 1 2013 08 08 A Location Name