检查日期是不是在 sql 中的日期范围之间(不检查年份)

     2023-03-29     275

关键词:

【中文标题】检查日期是不是在 sql 中的日期范围之间(不检查年份)【英文标题】:check if dates are between date range in sql (check without year)检查日期是否在 sql 中的日期范围之间(不检查年份) 【发布时间】:2012-05-15 05:35:29 【问题描述】:

我正在开发一个度假指南网站! 我正在使用 MySQL 数据库,其中存储有关酒店的信息。 我有 4 个日期字段来存储每个酒店工作的 2 个可能的季节(date_from、date_to、date_from_extra、date_to_extra)。我以如下格式存储日期:DD/MM,例如:25/12。

我正在尝试检查站点的第一个 datepicker 的 date1 和第二个 datepicker 的 date2 是否在数据库中的第一个范围(date_from、date_to)或第二个范围(date_from_extra、date_to_extra)之间。

问题是我不在数据库日期字段中使用年份,并且很难比较日期,尤其是当数据库中的第一季或第二季没有在年底完成但持续时间更长时,例如( 14/11 - 25/02)。

有什么帮助吗? 非常感谢!

【问题讨论】:

猜猜是时候开始在您的日期字段中添加年份了吗? :) 我认为您需要更改表格的列类型。除了没有将 Year 存储在您的数据库中之外,我还看到了另一个问题。您正在以 DD/MM 等格式存储日期。这样您将无法使用这些字段的索引。您应该以 MM/DD 格式存储。如果您以 MM/DD 格式存储,则可以编写直接比较语句,例如)where ($date > date_from and $date < date_to) or ($date > date_from_extra and $date < date_to_extra) 【参考方案1】:

试试这个

$todayDate = date("Y-m-d");
$check_date= strtotime($todayDate);

使用这个变量来检查

SELECT table_fiels FROM table_namE WHERE month(check_date)  BETWEEN month($your_db_start_date) AND  month($your_db_end_date) AND day(check_date)  BETWEEN day($your_db_start_date) AND  day($your_db_end_date)

【讨论】:

此代码无法工作,因为无法理解比较日期中是否有不同的年份。例如,如果酒店工作的季节是 14/11 - 25/02,则此代码将为我提供 25/02 至 14/11 的结果,而不是明年 14/11 至 25/02 的结果,这是正确的

SQL 检查一组日期是不是在指定的日期范围内

】SQL检查一组日期是不是在指定的日期范围内【英文标题】:SQLTocheckifasetofdatesfallwithinaspecifiedrangeofdatesSQL检查一组日期是否在指定的日期范围内【发布时间】:2011-02-1709:29:40【问题描述】:我有一个表格,其中包含架构中房间... 查看详情

检查当前日期是不是在两个日期之间 Oracle SQL

】检查当前日期是不是在两个日期之间OracleSQL【英文标题】:CheckifcurrentdateisbetweentwodatesOracleSQL检查当前日期是否在两个日期之间OracleSQL【发布时间】:2014-06-1709:30:31【问题描述】:如果当前日期在OracleSQL的两个日期之间,我想... 查看详情

MySQL 检查日期范围是不是在日期范围内

】MySQL检查日期范围是不是在日期范围内【英文标题】:MySQLCheckifdaterangeisindaterangeMySQL检查日期范围是否在日期范围内【发布时间】:2015-04-1909:20:17【问题描述】:在为小型预订系统进行SQL查询时遇到问题,我有一个包含两个条... 查看详情

Java:检查当前日期是不是在特定日期范围内[重复]

】Java:检查当前日期是不是在特定日期范围内[重复]【英文标题】:Java:Checkifcurrentdateisinrangeofspecificdays[duplicate]Java:检查当前日期是否在特定日期范围内[重复]【发布时间】:2016-02-1512:35:53【问题描述】:我正在努力解决以下问... 查看详情

需要 mongodb 查询来检查日期是不是在存储在集合文档中的两个日期之间[重复]

】需要mongodb查询来检查日期是不是在存储在集合文档中的两个日期之间[重复]【英文标题】:NeededmongodbquerytocheckwhetherdateisbetweentwoDatesstoredincollectiondocument[duplicate]需要mongodb查询来检查日期是否在存储在集合文档中的两个日期之... 查看详情

在插入 SQLite 之前检查表 B 中的日期是不是介于表 A 中的日期之间

】在插入SQLite之前检查表B中的日期是不是介于表A中的日期之间【英文标题】:CheckingifdateintableBisbetweendateinTableAbeforeinsertingSQLite在插入SQLite之前检查表B中的日期是否介于表A中的日期之间【发布时间】:2021-12-3012:41:42【问题描述... 查看详情

如何检查日期范围选择器中的日期是不是更改?

】如何检查日期范围选择器中的日期是不是更改?【英文标题】:Howtocheckdateischangeindaterangepicker?如何检查日期范围选择器中的日期是否更改?【发布时间】:2021-04-0808:05:47【问题描述】:我正在使用Bootstrap日期范围选择器,我... 查看详情

检查日期是不是在另一个数据框中的两个日期之间,如果是则操作日期

】检查日期是不是在另一个数据框中的两个日期之间,如果是则操作日期【英文标题】:Checkifdateisbetweentwodatesinanotherdataframe,andmanipulatedateifitis检查日期是否在另一个数据框中的两个日期之间,如果是则操作日期【发布时间】:20... 查看详情

如何检查特定学期的旅行是不是设置在从日期到日期之间

】如何检查特定学期的旅行是不是设置在从日期到日期之间【英文标题】:Howtocheckiftripforparticularsemesterissetbetweenfromdateandtodate如何检查特定学期的旅行是否设置在从日期到日期之间【发布时间】:2019-01-1204:50:04【问题描述】:这... 查看详情

检查一个表中的日期是不是出现在 Access 中另一个表的范围内

】检查一个表中的日期是不是出现在Access中另一个表的范围内【英文标题】:CheckifdateinonetableappearsinrangeinanothertableinAccess检查一个表中的日期是否出现在Access中另一个表的范围内【发布时间】:2014-03-2116:58:04【问题描述】:我正... 查看详情

如何检查今天是不是在 Twig 的两个日期之间?

】如何检查今天是不是在Twig的两个日期之间?【英文标题】:howtocheckiftodayisbetweentwodatesinTwig?如何检查今天是否在Twig的两个日期之间?【发布时间】:2017-05-1101:37:35【问题描述】:我想检查今天的日期是否介于数据库中的两个... 查看详情

访问 VBA 检查两个日期字段之间的时间段是不是不跨越特定日期

】访问VBA检查两个日期字段之间的时间段是不是不跨越特定日期【英文标题】:AccessVBAcheckthatperiodbetweentwodatefieldsdoesnotcrossspecificdate访问VBA检查两个日期字段之间的时间段是否不跨越特定日期【发布时间】:2016-05-2705:06:18【问题... 查看详情

用于检查日期范围的 Postgresql 函数

】用于检查日期范围的Postgresql函数【英文标题】:Postgresqlfunctionforcheckingdateranges【发布时间】:2012-04-2105:30:38【问题描述】:我不确定如何使用postgres函数检查日期范围。我想要做的是检查日期是否在一定范围内(开始日期前一... 查看详情

ORACLE SQL - 如何检查时间是不是在特定范围内?

】ORACLESQL-如何检查时间是不是在特定范围内?【英文标题】:ORACLESQL-Howtocheckwhetheratimefallswithinaparticularrange?ORACLESQL-如何检查时间是否在特定范围内?【发布时间】:2017-04-2712:32:06【问题描述】:有一列“DateTime”以“YYYY/MM/DDHH24... 查看详情

在 T-SQL 中检查两个日期之间的日期

】在T-SQL中检查两个日期之间的日期【英文标题】:CheckdatebetweentwodatesinT-SQL【发布时间】:2013-09-1007:53:39【问题描述】:我有一个存储过程,想要检查日期是否在固定日期和当前日期/时间之间(使用GETDATE()):SELECTa,bFROMmyTblWHERE... 查看详情

检查输入的日期时间是不是在 2 个日期时间值的范围内

】检查输入的日期时间是不是在2个日期时间值的范围内【英文标题】:checkwhetherentereddatetimeisbetweentherangeof2datetimevalues检查输入的日期时间是否在2个日期时间值的范围内【发布时间】:2013-03-0515:21:11【问题描述】:我有一个包含... 查看详情

在 SQL 和 VB.NET 中检查日期是不是小于另一个

】在SQL和VB.NET中检查日期是不是小于另一个【英文标题】:CheckifdateislessthananotherinSQLandVB.NET在SQL和VB.NET中检查日期是否小于另一个【发布时间】:2012-03-0114:34:16【问题描述】:我有2个SQL表(A和B),其日期格式为DD/MM/YYYY和时间... 查看详情

Python:如何检查日期是不是不明确?

】Python:如何检查日期是不是不明确?【英文标题】:Python:Howtocheckifdateisambiguous?Python:如何检查日期是否不明确?【发布时间】:2020-08-0221:10:15【问题描述】:是否有任何简单的方法,如何确定日期时间对象中的日期是否不明... 查看详情