0

我有一个案例,我需要计算按出版年份分组的记录数。我查看了文档和一般的网络,但我找不到要使用的内容。

例如

  • 2013 = 100 本书出版
  • 2012 = 95 本书
  • ETC..

使用 Oracle SQL,这是通过以下方式完成的:

select date_published, count(*) 
from   publications 
group by date_published 
order by date_published desc

我只是想知道如何将其翻译为 CFWheels。

4

2 回答 2

2

试试这个:

publications=model("publication").findAll( 
     select="date_published, COUNT(date_published) AS publishCount"
    , group="date_published"
    , order="date_published DESC" );

注意,COUNT()是wheels 中区分大小写的命令。

PS,或者你可以按照马特所说的去做——你甚至可以将它附加到模型上,这样你就可以做 Publications.getPubCountByYear() 等。

于 2013-11-05T11:59:18.113 回答
0

这更像是评论,但因为我需要格式,所以我将其发布为答案。你不能像 ColdFusion 中的常规查询一样编写查询吗?

<cfquery name="getCounts" datasource="myDSN">
select date_published, count(*) 
from publications 
group by date_published 
order by date_published desc
</cfquery>
于 2013-11-05T02:59:13.510 回答