从多个表中选择多个值的计数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从多个表中选择多个值的计数相关的知识,希望对你有一定的参考价值。
我有一个广播电台的歌曲数据库,这些数据库是由各个程序添加到报告中的。我想选择专辑,album_id,专辑中的歌曲数以及单个艺术家的报告历史中的专辑出现数。所以我想要以下结果:
| album_id | album_name | track_count | report_occurrence_count |
|---------------------------------------------------------------|
| 1 | Name 1 | 10 | 25 |
| 2 | Name 2 | 15 | 65 |
| 3 | Name 3 | 23 | 11 |
编辑:相关表从中选择值:
| album | artist | track | report_track |
|-------------------------------------------------------|
| id | id | id | id |
| artist_id | name | album_id | report_id |
| name | ... | artist_id | track_id |
| ... | ... | ... | ... |
我可以获取跟踪计数或报告出现计数,但不能同时获取两者。我尝试了以下方法:
SELECT al.id as album_id, al.name, al.identifier, count(tr.album_id) as track_count,
count(rt.track_id) as report_occurrence
FROM playlist__album as al, playlist__artist as ar, playlist__track as tr,
playlist__report_track as rt
WHERE al.artist_id = ar.id
and tr.album_id = al.id
and rt.track_id = tr.id
and ar.id = 39887
group by album_id
但是这使我的track_count和report_occurrence_count列的report_occurrence计数。如果我将count(rt.track_id)删除为report_occurrence,则将获得track_count的正确值。我已经尝试过here中找到的方法,但是该方法可以让我按艺术家计数所有曲目,而不是按专辑计数。
DB表是这样的:<<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3RlZW11a29zdGFtby9mdWxsc3RhRRRRRWiRnWycWynWycWynWcWycWycWycWycWxWycWycWxWycWycWycWycWyW9c
我有一个广播电台的歌曲数据库,这些数据库是由各个程序添加到报告中的。我想选择专辑,album_id,专辑中的歌曲数量以及报告中专辑出现的数量...
答案
可能是您需要不同的track_no用于轨道
以上是关于从多个表中选择多个值的计数的主要内容,如果未能解决你的问题,请参考以下文章