提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我使用 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
如果您的products
有start_date
和end_date
并且您的查询有qstart_date
和qend_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.