1
我遇到问题。解决方案归结为我缺乏SQL知识。 我有2张桌子。MySQL加入和COUNT(*)查询
Table : Jobs
+---+----------+
|ID | JobName |
+---+----------+
| 1 | Tinker |
| 2 | Tailor |
| 3 | Soldier |
| 4 | Sailor |
+---+----------+
Table : Applied
+---+--------------+--------+
|ID | JobAppliedID | Name |
+---+--------------+--------+
|1 | 1 |Cliff |
|2 | 2 |John |
|3 | 2 |Ringo |
|4 | 2 |Paul |
+---+--------------+--------+
现在,我想要做的就是创建一个SQL,这将只是做一个简单的选择上表JOBS,...
SELECT * FROM作业;
但我想在SELECT中重新计算每个作业已经应用了多少次。例如,它会返回以下内容。
+---+----------+-------+
|ID | JobName | Count |
+---+----------+-------+
| 1 | Tinker | 1 |
| 2 | Tailor | 3 |
| 3 | Soldier | 0 |
| 4 | Sailor | 0 |
+---+----------+-------+
我想我需要一个嵌入式SELECT,但我只是不知道从哪里开始。
任何人都可以帮忙吗?
谢谢。
'COUNT(a.jobappliedid)'会做的伎俩没有'COALESCE'。甚至更多 - 你的COUNT(*)将总是返回至少1行,从不返回0或NULL。甚至更远 - “COUNT(expr)'永远不会返回NULL。 – zerkms 2014-10-05 23:07:38
@zerkms你是对的我在我的手机,所以我甚至没有机会测试要么大声笑 – 2014-10-05 23:14:47
谢谢你们。我几乎是正确的,但没有到位的GROUP BY。 – Cliff 2014-10-06 10:22:33