尝试在sql语句中使用ADD_months函数回顾teradata中的整整4个月

尝试在sql语句中使用ADD_months函数回顾teradata中的整整4个月,sql,teradata,Sql,Teradata,我试着回去找回过去四个月的记录。这是我迄今为止的一个例子: 选择datecolumn,Count(datacolumnA)作为CountOfdatacolumnA,datacolumnB FROM tableA WHERE datacolumnB='AA' AND datecolumn >= ADD_MONTHS(CURRENT_DATE, -4) 我的结果显示了过去四个月加上本月,在本例中为10月。问题是六月没有显示整个月的正确计数。我这个月只算了一部分 你需要调整到月初。您可以通过

我试着回去找回过去四个月的记录。这是我迄今为止的一个例子:

选择datecolumn,Count(datacolumnA)作为CountOfdatacolumnA,datacolumnB

FROM tableA

WHERE datacolumnB='AA' AND datecolumn >= ADD_MONTHS(CURRENT_DATE, -4)

我的结果显示了过去四个月加上本月,在本例中为10月。问题是六月没有显示整个月的正确计数。我这个月只算了一部分

你需要调整到月初。您可以通过减去当月的日期来获得当月的“0”,然后再加1来获得第一个。(我认为teradata中的日期是小数,整数部分是从一个纪元开始的天数)


你需要适应这个月的开始。您可以通过减去当月的日期来获得当月的“0”,然后再加1来获得第一个。(我认为teradata中的日期是小数,整数部分是从一个纪元开始的天数)

Select
    datecolumn, 
    Count(datacolumnA) As CountOfdatacolumnA, 
    datacolumnB
From
    tableA
Where 
    datacolumnB='AA' And
    datecolumn >= 
        add_months(current_date, -4) 
        - extract(day from add_months(current_date, -4)) + 1