我如何 select 项目从日期间隔不考虑年份 — Informix DB
How can I select items from date interval regardless of years — Informix DB
我在 select 处理特定日期间隔内的项目时遇到问题。
我想从仅基于日期和月份的时间间隔中 select 项。
items_table
item_name | date_from
item1 30.6.2015
item2 31.7.2015
item3 5.8.2019
item4 14.8.2000
我需要这样的东西:
select *
from items_table
where date_from
between '****-07-31' and '****-08-13';
**** 可以是任何东西 - 例如 2010、2011、2012....
我只想得到:
item2
item3
您可以通过一些算法使用日期部分:
where month(date_from) * 100 + day(date_from) between 0731 and 0813
或作为字符串:
where to_char(date_from, '%m-%d') between '0731' and '0813'
另一个可能的解决方案:
select *
from items_table
where
extend(date_from, month to day) between extend('2000-07-31'::date, month to day) and extend('1998-08-13'::date, month to day);
2000 年和 1998 年不相关,因为在执行比较时它们将归零。
我在 select 处理特定日期间隔内的项目时遇到问题。 我想从仅基于日期和月份的时间间隔中 select 项。
items_table
item_name | date_from
item1 30.6.2015
item2 31.7.2015
item3 5.8.2019
item4 14.8.2000
我需要这样的东西:
select *
from items_table
where date_from
between '****-07-31' and '****-08-13';
**** 可以是任何东西 - 例如 2010、2011、2012....
我只想得到:
item2
item3
您可以通过一些算法使用日期部分:
where month(date_from) * 100 + day(date_from) between 0731 and 0813
或作为字符串:
where to_char(date_from, '%m-%d') between '0731' and '0813'
另一个可能的解决方案:
select *
from items_table
where
extend(date_from, month to day) between extend('2000-07-31'::date, month to day) and extend('1998-08-13'::date, month to day);
2000 年和 1998 年不相关,因为在执行比较时它们将归零。