SELECT *
from date_Table
where(
Select fiscal_date
from date_table
where full_date >= TO_DATE('5/8/2015 12:00:00 AM', 'mm/dd/yyyy HH:MI:SS AM'));
所以我可以编写一个返回开始日期的查询,问题是我需要从今天开始的6个月,从月的第一天开始,结束日期是今天或昨天。
我希望你们都能提供帮助。
答案 0 :(得分:1)
对于此声明变量并尝试此
declare @running_for datetime;
set @running_for = getdate();
SELECT *
from date_Table
where(
Select fiscal_date
from date_table d
where
(datepart(m,d.full_date) = DATEPART(m, DATEADD(m, -6, getdate())))
and
d.full_date <= @running_for-1 --- if it is yesterday
// d.full_date <= @running_for --- if it is today
答案 1 :(得分:0)
将不属于数据库的计算与查询分开。然后从更简单的部分构建您的查询以获得您想要的内容。
您的计算包括开始日期等内容。它与数据库中的内容无关,所以首先进行计算。
对于查询,请尝试这些;
通过解决这些更简单的案例,你应该能够看到你的解决方案。