Access SQL查询-从每月的特定日期选择日期范围
我已经为这个问题绞尽脑汁有一段时间了,但我想做一个查询,根据我们所在的月份,选择从当前/上个月24日到下一个/当前月24日的值-这基本上是从一个工资单到下一个工资单。对SQL查询有什么建议吗Access SQL查询-从每月的特定日期选择日期范围,sql,ms-access,Sql,Ms Access,我已经为这个问题绞尽脑汁有一段时间了,但我想做一个查询,根据我们所在的月份,选择从当前/上个月24日到下一个/当前月24日的值-这基本上是从一个工资单到下一个工资单。对SQL查询有什么建议吗 例如,如果当前日期是3月20日,那么我需要从2月24日到3月24日的所有数据,但是如果日期超过本月24日,比如3月30日,那么我需要从3月24日到4月24日的数据——如果这有意义的话 谢谢, Phill只需减去23天,然后提取年份和月份: select year(dateadd("d", -23, date
例如,如果当前日期是3月20日,那么我需要从2月24日到3月24日的所有数据,但是如果日期超过本月24日,比如3月30日,那么我需要从3月24日到4月24日的数据——如果这有意义的话 谢谢,
Phill只需减去23天,然后提取年份和月份:
select year(dateadd("d", -23, datecol)) as year,
month(dateadd("d", -23, datecol)) as month
只需减去23天,然后提取年份和月份:
select year(dateadd("d", -23, datecol)) as year,
month(dateadd("d", -23, datecol)) as month
用这句话:
iif(
day(date()) >= 24,
dateserial(year(date()), month(date()), 24),
dateserial(year(dateadd('m', -1, date())), month(dateadd('m', -1, date())), 24)
)
您可以获得您的病情开始日期(虽然我不确定>=
符号,也许应该通过>
?)来确定),因此请像这样使用它:
select t.col1, t.col2, ...
from (
select *,
iif(
day(date()) >= 24,
dateserial(year(date()), month(date()), 24),
dateserial(year(dateadd('m', -1, date())), month(dateadd('m', -1, date())), 24)
) as start_date
from tablename
) as t
where t.date_column between t.start_date and dateadd('m', 1, t.start_date)
用这句话:
iif(
day(date()) >= 24,
dateserial(year(date()), month(date()), 24),
dateserial(year(dateadd('m', -1, date())), month(dateadd('m', -1, date())), 24)
)
您可以获得您的病情开始日期(虽然我不确定>=
符号,也许应该通过>
?)来确定),因此请像这样使用它:
select t.col1, t.col2, ...
from (
select *,
iif(
day(date()) >= 24,
dateserial(year(date()), month(date()), 24),
dateserial(year(dateadd('m', -1, date())), month(dateadd('m', -1, date())), 24)
) as start_date
from tablename
) as t
where t.date_column between t.start_date and dateadd('m', 1, t.start_date)
对于更精简的方法,请使用DateAdd和DateDiff:
选择*
从你的桌子上
其中DateDiff('m',DateAdd('d',-23,[YourDateField]),DateAdd('d',-23,Date())=0
对于更精简的方法,请使用DateAdd和DateDiff:
选择*
从你的桌子上
其中DateDiff('m',DateAdd('d',-23,[YourDateField]),DateAdd('d',-23,Date())=0
你所说的取决于我们所处的月份是什么意思?例如,如果当前日期是3月20日,那么我需要从2月24日到3月24日的所有数据,但是如果日期超过了本月24日,比如3月30日,那么我需要3月24日到4月24日的数据-如果这有意义的话。你说的取决于我们所在的月份是什么意思?例如,如果当前日期是3月20日,那么我需要2月24日到3月24日的所有数据,但是如果日期超过了本月24日,比如说3月30日,那么我想要3月24日到4月24日的数据——如果这有意义的话。谢谢——那太完美了谢谢——那太完美了