最常用的日期查询[关闭]

Posted

技术标签:

【中文标题】最常用的日期查询[关闭]【英文标题】:Most used date query [closed] 【发布时间】:2020-12-20 11:42:35 【问题描述】:

我正在使用 SQL Server。如何仅从我的表中查询 2018 年 2 月的所有记录?我正在寻找最常用的日期查询。然后应该有我可以轻松更改此日期的查询。

【问题讨论】:

到目前为止你尝试了什么? 欢迎来到 ***。我建议您阅读How to ask 和How to ask a good SQL question,以便您可以写出高质量的问题并让人们帮助您。在这种特殊情况下,请提供minimal reproducible example,即一小组样本数据、样本数据的预期结果、您对选项所做的研究以及您所做的尝试。 【参考方案1】:

假设你有一个date 列或类似的:

select *
from mytable
where mydate >= '20180201' and mydate < '20180301'

【讨论】:

非常感谢您的回答。那么如何使这种日期格式参数化呢?【参考方案2】:

类似这样的:

SELECT (list of columns)
FROM dbo.YourTableHere
WHERE YourDateColumn >= '20180201' AND YourDateColumn < '20180301'

基本上只使用普通的 &gt;=&lt; 运算符,以及 ISO-8601 格式的日期字符串文字来获取从 2 月 1 日开始的任何内容,但 3 月之前2018 年 1 月 1 日。

这当然是假设 YourDateColumn 真的是 DATEDATETIME2(n) 数据类型 - 它真的应该是!

【讨论】:

非常感谢您的回答。那么我怎样才能使这个日期格式参数化呢?【参考方案3】:
SELECT *
FROM MYTABLE
WHERE MYDATECOLUMN LIKE '2018-02%'

你也可以使用 LIKE。

如果您的日期保存为 2018-02-01,上述查询将起作用。

如果您的日期保存为 20180201,则其他人的答案将起作用或使用 LIKE '201802%'

【讨论】:

LIKE in SQL Server 不起作用DATEDATETIME2(n) 列 - 这真的应该是! @marc_s LIKE 确实DATETIME2 中工作我在我的环境中使用了很多。我认为它也可以在 DATETIMEDATE 中使用,所以如果不是,那是我的错误。

以上是关于最常用的日期查询[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Abap日期字段比较和查询最年轻的字段[关闭]

五种最常用的实时操作系统是啥? [关闭]

Hibernate中最常用的保存,更新,删除操作都有哪些?

Ruby on Rails 日期查询和修改的方法--数据库常用操作

ASP.NET:您最常用的 httpmodules [关闭]

C# 中哪个三元运算符最流行和最常用? [关闭]