Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MYSQL pilih kueri menggunakan hitungan (*)

Sekarang setelah Anda menguraikan lebih lanjut tentang apa yang sebenarnya ingin Anda capai, dapat dilihat bahwa masalahnya jauh lebih kompleks. Anda sebenarnya menginginkan semua kombinasi subscriber_id dan tag_id , lalu hitung jumlah entri aktual dalam produk tabel gabungan. Wah. Jadi beginilah SQLnya:

SELECT combinations.tag_id,
       combinations.subscriber_id,

-- correlated subquery to count the actual hits by tag/subscriber when joining
-- the two tables using content_id

       (SELECT count(*)
        FROM content_hits AS h
        JOIN content_tag AS t ON h.content_id = t.content_id
        WHERE h.subscriber_id = combinations.subscriber_id
        AND t.tag_id = combinations.tag_id) as cnt

-- Create all combinations of tag/subscribers first, before counting anything
-- This will be necessary to have "zero-counts" for any combination of
-- tag/subscriber

FROM (
  SELECT DISTINCT tag_id, subscriber_id
  FROM content_tag
  CROSS JOIN content_hits
) AS combinations


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memasukkan pesan email masuk ke database mySQL?

  2. salin semua baris tabel ke tabel lain

  3. Alternatif untuk Intersect di MySQL

  4. Delphi XE5 FireDAC Error:Tidak dapat memuat pustaka vendor [libmysql.dll atau libmysqld.dll]

  5. berikan nilai dalam url href di php