1

我需要使用 CF 8 查询 SQL DB 中的表,查看特定列的重复值,并计算它出现的次数。我对 CF 真的很陌生,我一生都无法弄清楚如何做到这一点。我可以查询数据库并从引用的列中指定结果,但其余的令人沮丧!

因此,如果我从特定列的查询中得到以下结果:

APPLE
APPLE
GRAPE
PEAR
APPLE
PEAR
APPLE

我知道我可以对查询进行查询,但我必须事先知道值(在这种情况下为水果)是什么。或者我相信。

基本上,我需要的是能够运行 CFM 并将其吐出:

  • 苹果:4
  • 梨:2
  • 葡萄:1

事先不知道这些值可能是什么。

有人可以帮忙吗?

4

2 回答 2

4
<cfquery name="qMyFruits">
SELECT fruitName, COUNT(fruitName) AS instances
FROM Fruits
GROUP BY fruitName
</cfquery>

<cfoutput query="qMyFruits">
<p>#qMyFruits.fruitName# : #qMyFruits.instances#</p>
</cfoutput>
于 2013-05-13T17:56:15.487 回答
3

我会用 SQL 来做。您可以创建一个 CFLOOP,然后构建一个结构或其他逻辑机制来计算每个水果,但这要容易得多:

<cfquery name="FruitSummary" datasource="myDatasource">
    SELECT
        FruitName, Count(FruitName) as Count
    FROM
        FruitBasket
    GROUP BY
        FruitName
    ORDER BY
        Count(FruitName) DESC
</cfquery>
于 2013-05-13T17:57:44.693 回答