用于检索该月最后一天的记录的 SQL 查询

2023-12-05

我有一个包含许多日期记录的表。 我想执行一个仅返回该日期月份最后一天的记录的查询。就像是:

SELECT * FROM mytable
WHERE DATEPART(d, mytable.rdate) = DATEPART(d,DATEADD(m,1,DATEADD(d, -1, mytable.rdate)))

但这不起作用rdate参数右侧的应该是该月的最后一天dateadd返回正确的比较。

基本上有没有一种简洁的方法来进行这种比较? 四分之一决赛的等价物也会非常有帮助,但无疑更复杂。

EDIT:

本质上,我想检查给定日期是否是其所属月份(或季度)的最后一个日期。如果是,则返回该记录。这将涉及一些函数来返回任何日期该月的最后一天。例如lastdayofmonth('2013-06-10') = 30(所以这条记录不会被返回。

EDIT2:

对于返回所在季度最后一天的记录的情况,需要类似于:

SELECT * FROM mytable
WHERE DATEPART('d', mytable.rdate) = lastdayofmonth(mytable.rdate)
  AND DATEPART('m', mytable.rdate) = lastmonthofquarter(mytable.rdate);

棘手的一点是lastdayofmonth() and lastmonthofquarter()功能


Use the 日期序列函数计算给定日期该月的最后一天。

传递零作为第三个参数,day,实际上返回最后一个日期previous month.

rdate = #2013-7-24#
? DateSerial(Year(rdate), Month(rdate), 0)
6/30/2013 

因此要获取最后日期rdate月,添加1 to the month争论。

? DateSerial(Year(rdate), Month(rdate) + 1, 0)
7/31/2013 

您可能怀疑这种方法会在 12 月失效rdate, since Month() + 1将返回 13。但是,DateSerial仍然应付它。

rdate = #2013-12-1#
? DateSerial(Year(rdate), Month(rdate) + 1, 0)
12/31/2013 

如果要从 Access 应用程序会话中运行查询,则可以基于该方法构建 VBA 函数,并在查询中使用自定义函数。

但是,如果查询将从 ODBC 或 OleDb 连接到 Access 数据库运行,则查询不能使用 VBA 用户定义函数。在这种情况下,您可以使用DateSerial直接在您的查询中。

SELECT m.*
FROM mytable AS m
WHERE m.rdate = DateSerial(Year(m.rdate), Month(m.rdate) + 1, 0)

如果你的rdate值均包含午夜作为时间部分。如果这些值包括其他时间,请使用DateValue.

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

用于检索该月最后一天的记录的 SQL 查询 的相关文章

  • Java - 在特定日期执行方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我需要在每年的特定日期执行一个方法 我该如何在java中执行此操作 Thanks Chris 按优先顺序排列 The Quartz htt
  • 插入 Hive 表 - 非分区表到具有多个分区的分区表 - 无法插入目标表,因为列号/类型

    当我尝试插入分区表时 出现以下错误 SemanticException 错误 10044 第 1 23 行无法插入目标表 因为列号 类型不同 表 insclause 0 有 6 列 这 3 列已分区 我们不需要任何必须从中转储 存储的过滤器
  • 将 .MDF SQL Server 数据库与 ASP.NET 结合使用与使用 SQL Server

    我目前正在 ASP NET MVC 中编写一个网站 我的数据库 其中还没有任何数据 只有正确的表 使用 SQL Server 2008 我已将其安装在我的开发计算机上 我使用服务器资源管理器从应用程序连接到数据库 然后使用 LINQ to
  • SQL:如何在按部分分组的查询中使用子查询?

    如何在按部分分组的查询中使用子查询 我使用 SQL Server 2008 R2 和 Delphi 2010 我收到此错误 Cannot perform an aggregate function on an expression cont
  • 计算从给定日期开始的月份中的第几天?

    我正在努力寻找一种简单有效的解决方案来计算每月的工作日 例如 如果给定日期是第一个星期一Monday 5th March 2018然后我想获取接下来 6 个月每个月第一个星期一的日期 例如 Monday 2nd April 2018 and
  • SQL Server 2008R2 和创建 XML 文档

    论坛上的第一篇文章 因为我真的被这个问题困住了 以下查询正确地将有效的 XML 文档分配给 xTempXML 变量 类型为 xml 注 文档的长度 转换为varchar max 711 select xTempXML select Pres
  • 通过 osql.exe 运行脚本时出现问题

    我尝试以这种格式运行我的软件的更新脚本 osql exe i path to script U 用户 P 密码 S sqlserver 位置 d 数据库名称 n b 大多数脚本的格式相同 并且都以 GO 结尾 其中很多都运行得很好 但随机脚
  • PHP 中给定日期的下一个工作日

    有人有一个 PHP 代码片段来计算给定日期的下一个工作日吗 例如 需要如何转换 YYYY MM DD 才能找到下一个工作日 例子 对于 03 04 2011 DD MM YYYY 下一个工作日是 04 04 2011 对于 2011 年 4
  • SQL 2008全文索引填充延迟

    我的经理说 在基础表数据更改后 可能需要一段时间才能更新全文搜索索引 例如 如果我有一张桌子Products有一个柱子Description我更新了该描述 然后我可能需要一些时间才能搜索该新描述 真的吗 这需要多长时间 SQL 2008 对
  • 根据日期顺序排名

    我的数据如下 Heading Date A 2009 02 01 B 2009 02 03 c 2009 02 05 d 2009 02 06 e 2009 02 08 我需要如下排名 Heading Date Rank A 2009 02
  • 什么时候应该使用 C++ 而不是 SQL?

    我是一名 C 程序员 偶尔使用 MySQL 来处理数据库 但我的 SQL 知识相当有限 但我肯定愿意改变这一点 目前 我正在尝试仅使用 SQL 查询对数据库中的数据进行分析 但我准备放弃了 转而将数据导入到C 中 用C 代码进行分析 我和同
  • sql查询获取从一月到当月的所有数据,即使没有记录

    我不擅长 sql 所以任何帮助世界都很棒 我有一个 SQL 查询 可以获取从一月到当月注册的记录 我的代码示例 SELECT DatePart YEAR p createStamp as TheYear DatePart MONTH p c
  • Reporting Services 在哪里存储其日志文件

    最相关的谷歌结果似乎表明 为了访问日志 我们必须将您自己的日志表部署到数据库并制作报告服务写入它 http technet microsoft com en us library ms157403 aspx 简而言之 Reporting S
  • 如何搜索例程的内容/(SP-触发函数)

    我需要在数据库内所有例程的例程主体 存储过程 函数 触发器 中搜索文本 我该怎么做 Thanks SELECT OBJECT NAME object id FROM sys sql modules WHERE definition LIKE
  • 在 SQL Server 上执行分页的最佳方式是什么?

    我有一个数据库超过200万记录 我需要执行分页以在我的 Web 应用程序上显示 该应用程序每页必须有 10 条记录DataGrid 我已经尝试使用ROW NUMBER 但是这种方式会选择所有 200 万条记录 然后只得到 10 条记录 我也
  • SQL Server 连接其他表中不存在的位置

    Service Asset AssetService Id Name Id Name AssetId ServiceId
  • SQL 连接两个没有关系的表

    我有具有相同结构的不同表 我想通过其中一列将它们连接起来 问题是他们不共享该专栏中的信息 Table 1 Type A Name Value Table 2 Type B Name Value 结果表 在单列中 nameFromA name
  • 如何使用 SQL Server 2008 将行复制到同一个表中

    A 到目前为止我的方式 sqlCommand CommandText INSERT Table1 column1 column2 column3 SELECT column1 column2 column3 FROM Table1 WHER
  • 条件在反应本机生产中失败,但在开发中有效

    我创建了一个反应本机应用程序 我需要通过它进行比较 如果属实 就会执行死刑 问题是 该条件适用于 React Native 开发模式 而不适用于 React Native 生产版本 我使用 firebase 作为数据库 也使用 redux
  • 如何获取自定义订单的结果? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 代替ASC or DESC 我希望我的查询结果采用特定的自定义顺序 例如 如果我想要的结果不是 A B C D 而是 P A L H 该怎么

随机推荐

  • 这个插值搜索实现有什么问题?

    这是在 Internet 上找到的插值搜索算法的常见 C C 实现 然而 当与大约 100000 个整数的排序数组一起使用时 中间变量开始生成负数组索引 从而导致分段错误 问题可能是什么 include
  • 使用 boost 迭代 xml 文件

    我是 boost 和 xml 的新手 我正在尝试扫描 xml 文件并保存一些特定值 I read this文章和我的问题是 如果 xml 包含几个
  • 预测时间序列数据

    我做了一些研究 但我一直在寻找解决方案 我有一个时间序列数据 非常基本的数据框架 我们称之为x Date Used 11 1 2011 587 11 2 2011 578 11 3 2011 600 11 4 2011 599 11 5 2
  • 更改编辑控件中文本的背景

    您可以更改编辑控件区域中保持静态的文本背景吗 在编辑控件的父级中 处理WM CTLC彩色静态消息 该消息的wParam是Edit控件将要绘制的HDC 对于大多数 CTLCOLOR 消息 如果您在此 DC 中设置文本和背景颜色 则控件将使用您
  • 对象处理触摸事件但也让它通过

    我想创建一个像这样工作的对象MultiPointTouchArea 因此它将具有 touchUpdated 信号 但它也不会窃取触摸 因此放置在其下方的对象也将接收触摸事件 该解决方案可能需要创建 C 对象 有没有一种简单的方法来创建这样的
  • 在 silverlight 中单击子窗口外部即可关闭子窗口

    当我点击子窗口外部时如何关闭子窗口 如果您使用默认的silverlight子窗口样式 当它打开时 外部部分 透明的灰色部分 实际上是子窗口样式内的网格 称为覆盖 所以你需要做的是处理它的MouseLeftButtonDown事件
  • 良好的命名空间命名约定

    我正在为 CRUD 业务应用程序创建一个类库 业务对象 以及相关的数据访问层对象 的主要 类别 是 维护 用于与master一起工作 数据库中的表 主列表 事件 大多数对象与现实世界的事件相关 搜索 显而易见 到目前为止 我的命名空间设置如
  • 使用 Java 将 At 命令发送到 gsm 调制解调器

    我正在尝试编写一个发送短信的程序 我写了程序 但没有成功发送消息 我的程序向我的计算机中的 COM 端口发送一条 At 命令 但我没有从我的 gsm 调制解调器收到响应 我正在使用 COM 终端 Temp pro 通过 at 命令发送短信
  • 如何在java中将mm / dd / yyyy转换为yyyy-mm-dd [重复]

    这个问题在这里已经有答案了 我将输入日期作为字符串输入 mm dd yyyy 并希望将其转换为 yyyy mm dd 我试试这个代码 Date Dob new SimpleDateFormat yyyy mm dd parse reques
  • 如何在SPRING MVC POJO的字段中保存日文字符

    我正在使用构建网络应用程序 春季MVC 春季安全 Hibenate MySQl 我想为我的应用程序添加国际化支持 我想使用 Hibernate 将日语字符存储并检索到 mySQL 数据库 我已将数据库字符集设置为UTF 8并且还添加了属性h
  • 适用于 iOS 的 RTSP 视频流 [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我想在iPhone屏幕上显示视频流RTSP 可以抛出项目的源代码或如何实现它的详细信息 找到2个项目 但还没有编译 https github com mooncatventure
  • 通过 python odoo 9 自定义报告

    如何将多个模块数据传递到 QWeb 报表 在从控制器渲染 html 时是否有类似于传递字典的东西 class account model Models name account main name fields Char class acc
  • 帮助页脚始终位于底部

    我知道这个问题已经在这里讨论过很多次了 但是我在这里找到的答案似乎都没有解决我的问题 我有这个可变 高度 布局 并且希望页脚始终粘在底部 我使用了最小高度 100 到容器 div 并以某种方式让它始终位于底部 问题是 它沉得太低了 我在这里
  • 如何将 .c 和 .h 文件添加到 Atmel Studio 6?

    我知道关于这个主题有很多问题 而且我已经研究了其中相当多的问题 但是我仍然遇到问题 我开始为 PCB 原型编写测试程序 现在它已增长到近 1000 行 我正尝试将其分解为可用于特定功能的库 我以为这会很简单 为我需要的每个库制作 c 和 h
  • 屏幕高度兼容 iphone 5 和 iphone 4 [重复]

    这个问题在这里已经有答案了 可能的重复 如何支持更高的 iPhone 5 屏幕尺寸 我是 iPhone 新手 我有一个小疑问 现在iphone5的屏幕高度是568 以前的iphone的屏幕高度是480 我们如何实现iphone5的应用程序
  • 获取gridview(不是datagridview)中单击的单元格索引asp.net

    当我单击 gridview 不是 datagridview 中的单元格时 我想获取单元格索引 不是行索引 而不是行索引 我使用 asp net c Use the RowCreated注册单元格的事件 单击每个单元格并处理GridView
  • 无法使用 i 从 1 到 n 循环重复执行 shell 脚本

    这是有效的 例如 打印 3 个参数 to run argv do shell script echo count argv arguments end run 这不会 仅打印 参数 3 三 而不打印前两个参数 to run argv do
  • 为什么当我使用SOLR查询所有文档时CPU使用率接近100%

    我有一个使用 SOLR 查询 200 万以上文档并按时间排序的应用程序 查询 URL 参数如下 select sort p review date desc rows 10 start 0 q 参数start为变量值 每个请求增加10 当我
  • 当外部 json 文件中给出测试数据时,在 AWS 场上获取文件未找到异常

    文件未找到异常 以下是日志 TestNG INVOKING test testscripts LoginTest loginWithValidCredentialsTest Invoker 1915058446 Invoking tests
  • 用于检索该月最后一天的记录的 SQL 查询

    我有一个包含许多日期记录的表 我想执行一个仅返回该日期月份最后一天的记录的查询 就像是 SELECT FROM mytable WHERE DATEPART d mytable rdate DATEPART d DATEADD m 1 DA