web-dev-qa-db-ja.com

集計を使用してビューの結果をカウントする

(プログラムではなく)集計を使用して、ビューで結果をカウントする(たとえば、コンテンツタイプxのノードをカウントする)ことはできますか?

29
hpn

はい、そのままのビュー3で可能です。
アイデアはSQL集計と同じです。例を見てみましょう:

  1. ビューを編集して、ビューの集計を有効にします。
    enable Views aggregations

  2. デフォルトのソート基準を削除します。

  3. 「コンテンツ:タイプ」および「コンテンツ:ニッド」フィールドを追加します。 enter image description here
    コンテンツのCOUNT関数を選択:Nid: enter image description here

何が起きているかを確認するには、グローバルビュー設定ページで[SQLクエリを表示する]チェックボックスをオンにします。

SELECT node.type AS node_type, COUNT(node.nid) AS nid
FROM 
{node} node
WHERE (( (node.status = '1') ))
GROUP BY node_type
LIMIT 10 OFFSET 0

したがって、node_typeでノードをグループ化し、このグループの数を計算しています。

44
kalabro

あなたの元の質問はあなたが何をしようとしているのかを述べていませんが、ここに素晴らしい答えがありますdoカウント値を使って。おそらくあなたはそれを表示したいですか?

もしそうなら、ここに別の解決策があります:

コンテンツタイプのアイテムでフィルタリングするようにビューがすでに設定されていると仮定すると、ビューにヘッダーを追加して[グローバル:結果の概要]オプションを選択し、テキスト領域に表示されるトークン変数を使用することもできます。

10
therobyouknow