Hitung hasil dalam Tampilan menggunakan agregasi [tertutup]

30

Apakah mungkin untuk menghitung hasil (misalnya menghitung node dari tipe konten x) dalam tampilan, menggunakan agregasi (tidak secara terprogram)?

hpn
sumber
3
Tentu, cukup gunakan agregasi lalu pilih "hitung" untuk bidang "simpul id" Anda.
uwe
1
Ada T&J yang identik di drupal.stackexchange.com/questions/15871/count-of-nodes-by-type , termasuk ekspor tampilan yang siap digunakan.
marcvangend

Jawaban:

42

Ya, dimungkinkan di Tampilan 3 di luar kotak.
Idenya sama dengan agregasi SQL. Mari kita lihat sebuah contoh:

  1. Edit tampilan Anda dan aktifkan agregasi Tampilan:
    aktifkan agregasi Tampilan

  2. Hapus kriteria pengurutan standar.

  3. Tambahkan bidang “Konten: Jenis” dan “Konten: Nid”: masukkan deskripsi gambar di sini
    Pilih fungsi COUNT untuk Konten: Nid: masukkan deskripsi gambar di sini

Untuk melihat apa yang terjadi, cukup hidupkan kotak centang "Tampilkan kueri SQL" di halaman pengaturan Tampilan global.

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

Jadi, kami mengelompokkan node berdasarkan node_type dan menghitung jumlah untuk grup ini.

kalabro
sumber
1
Saya macet selama beberapa jam, kemudian setelah membaca posting Anda, saya menyadari bahwa saya memiliki penyortiran default di sana. Terima kasih @kalabro
saadlulu
2
Jadi bagaimana penghitungan tersedia - apakah itu token variabel dan bagaimana bisa ditampilkan?
therobyouknow
Jawaban Anda tentu saja benar. Namun, saya terjebak ketika menggunakan Hubungan dengan Referensi Entitas dan Agregasi. Ini berfungsi dengan baik jika Anda membangun blok, tetapi tidak jika Anda membuat Halaman. Hal-hal aneh.
Urb Gim Tam
10

Jawaban yang bagus di sini meskipun pertanyaan awal Anda tidak menyatakan apa yang akan Anda lakukan dengan nilai hitungan. Mungkin Anda ingin menampilkannya?

Jika demikian, inilah solusi lain:

Dengan asumsi bahwa Tampilan Anda sudah diatur untuk memfilter menurut item dari jenis konten, maka Anda juga dapat menambahkan header di Tampilan dan memilih opsi "Global: Ringkasan hasil" dan menggunakan variabel token yang disediakan di area teks.

therobyouknow
sumber
Untuk memperjelas, ini memperluas solusi hebat yang disediakan oleh kalabro, untuk menampilkan hitungan.
therobyouknow
-2

Untuk berjaga-jaga jika seseorang menemukan ini.

Saya menggunakan Format Tanggal Views SQL untuk memformat tanggal ke rincian.

Modul Views Date Format SQL memungkinkan untuk memformat bidang tanggal menggunakan SQL. Ini memungkinkan agregasi grup untuk bidang tanggal menggunakan granularity yang dipilih.

Fungsionalitas inti adalah menghapus pemformatan tanggal dari render () dan memasukkannya ke dalam kueri (). Yaitu format nilai tanggal menggunakan DATE_FORMAT SQL daripada format_date PHP.

Ini dicapai dengan menetapkan penangan default baru ke bidang tanggal node 'dibuat' dan 'diubah'. Handler ini memperluas dan menimpa tampilan build di views_handler_field_date.

Bekerja tepat di luar kotak - semudah!

Jeremy
sumber