繁体   English   中英

MySql 查询 - 日期范围内的日期范围

[英]MySql Query- Date Range within a Date Range

我使用 mySql 5 和 IIS。
我有products ,有一个start date字段和一个end date字段。

我需要运行一个查询,该查询将获取用户输入的开始日期和结束日期,以及 output 产品在日期范围内运行的天数。

例子:

Offer1 - July 1 2011 thru July 31 2011
Query - July 1 2011 thru Sept 15 2011

结果 = 31

Example:
Offer1 - July 1 2011 thru July 31 2011
Query - July 1 2011 thru July 15 2011

结果 = 15

如果您的productsstart_dateend_date并且您的查询有qstart_dateqend_date ,那么我们需要以下天数:

GREATEST(start_date, qstart_date)

LEAST(end_date,qend_date)

. 在 MySQL 我认为这看起来像

1 + DATEDIFF ( 'd' , GREATEST(start_date, qstart_date) , LEAST(end_date,qend_date) ) 

你会想忽略负数,用“0”代替它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM