2016-07-06 63 views
0

我想获得一个基于两个日期的计数,我不知道它应该如何看待查询。我有两个日期字段;我想根据这些日期得到一个计数。Coldfusion的查询查询按日期计数

<cfquery> 
    SELECT COUNT(*) 
    FROM Table1 
    Where month of date1 is one month less than month of date2 
</cfquery> 
+1

环比的不支持日期的功能。阅读[文档](http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec0e4fd-7ff0.html)了解更多详情。如果你需要日期函数,那必须在db查询中完成。语法是dbms特定的。 – Leigh

+0

这在oracle中会是什么样子? –

+0

不知道。我不是Oracle人。你有没有搜索Oracle和日期功能?我相信它必须具有相当于dateAdd函数。 – Leigh

回答

0

假设表1是您的原始查询,您可以按如下方式完成您的目标。

第1步 - 使用QueryAddColumn两次添加两个空列。

第2步 - 循环查询并用数字填充这两列。一个代表date1,另一个代表date2。这不像放入月份数字那么简单,因为您也必须考虑年份。

第3步 - 写您的Q Q随过滤器类似于此:

where NewColumn1 - NewColumn2 = 1 
+0

除非有充分的理由不这样做,否则让数据库做它最擅长的事情。使用QoQ来避免编写正确的数据库查询是一个糟糕的方法。 – Leigh