sql - 如何在 SQL 中搜索日期?

标签 sql sql-server date sql-server-2000

我有一个我想要的事件管理系统,

如果一个事件注册了 5 天(2009 年 1 月 21 日到 2009 年 1 月 26 日),那么如果另一个人想要在 2009 年 1 月 22 日到 2009 年 1 月 24 日之间注册一个事件,那么它将不允许注册。我想使用 SQL 查询来检查,所以请告诉我该怎么做。

最佳答案

只是为了完成其他答案,您在 How to Search for Date and Time Values Using SQL Server 2000 上有一篇很好的文章

它会提醒您日期/时间值的存储方式(两种日期/时间数据类型:datetime 和 smalldatetime)

它还指出 Datetime 和 smalldatetime 类似于 float 据类型,float 和 real,因为它们是近似数字。这意味着从 SQL Server 检索的值可能与最初存储的值不同。

另外,它会警告数据库设计人员并不总是正确使用日期/时间列。在设计数据库时,应确定每个日期/时间列是同时存储日期和时间、仅存储日期还是仅存储时间。

它以 practical queries on data/time 结束.

你对 DATEADD and DATEDIFF here 的描述也很好。 .

关于sql - 如何在 SQL 中搜索日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/358630/

相关文章:

mysql添加某些产品的总价

php - 将 mssql 日期时间对象转换为 PHP 字符串

sql-server - 在临时表上创建主键 - 何时?

java - 从 java 准备好的语句中杀死 MS SQL 进程?

linux - 使用 Shell 脚本进行数据、时间验证

Mysql 忽略 varchar 主键上的条件 'where'

sql - 在单独的列中添加查询输出的最小值

mysql - 为什么这个 SQL 代码不安全?

php - 在php中比较日期与mongoDB ISODate格式

Mysql时间戳差异结果