我正在构建一个收集网站,目前我正在处理的一件事是查询某个用户在一个系列中有多少个游戏,该工作正常,下面的查询输出这样的:获取表的数量无视条款
<table style="width:100%;text-align:center">
<tr>
<th>user_account_id</th>
<th>series_id</th>
<th>Name</th>
<th>COUNT(g.id)</th>
</tr>
<tr>
<td>1</td>
<td>7</td>
<td>Halo</td>
<td>2</td>
</tr>
<tr>
<td>1</td>
<td>11</td>
<td>Call of Duty</td>
<td>6</td>
</tr>
<tr>
<td>1</td>
<td>3</td>
<td>Forza</td>
<td>3</td>
</tr>
</table>
SELECT uc.user_account_id,
g.series_id,
gs.name,
COUNT(g.id)
FROM user_collections uc
LEFT JOIN games g
ON g.id = uc.game_id
LEFT JOIN games_series gs
ON gs.id = g.series_id
WHERE uc.user_account_id = 1
GROUP BY(g.series_id)
我想弄清楚如何从我的games
表基础上提供series_id
信息获取所有行的完整计数S我的查询的选择部分。所以输出相反,会是这样:
<table style="width:100%;text-align:center">
<tr>
<th>user_account_id</th>
<th>series_id</th>
<th>Name</th>
<th>COUNT(g.id)</th>
<th>Full Count</th>
</tr>
<tr>
<td>1</td>
<td>7</td>
<td>Halo</td>
<td>2</td>
<td>10</td>
</tr>
<tr>
<td>1</td>
<td>11</td>
<td>Call of Duty</td>
<td>6</td>
<td>12</td>
</tr>
<tr>
<td>1</td>
<td>3</td>
<td>Forza</td>
<td>3</td>
<td>8</td>
</tr>
</table>
我试着做一个子选择查询,但它看起来像你不能做基于关闭的列的WHERE子句选择查询,所以我不太确定从哪里去。
任何帮助,将不胜感激。谢谢!
什么是'全Count'在使用子查询correllated?与COUNT有什么不同? –
'COUNT(g.id)'是用户在其收藏中的数量。 “完整计数”是用户可以拥有多少用户。 – JTP