我有2个表,我在一个表中保存了entrys。例如,我提供智能手机的条目。
在每个条目上都可能有更多问题。比如像客户和供应商聊天。
将此问题保存在第二个表中。每个问题都会得到“入口ID”。
现在我想获得所有entrys并将每个条目的所有问题计为单个值。
例如:
计数从第二个表连接到ID的所有行,并在第一个表的右侧添加值
id |title | desc | questionscount
1 |samsung s7.. | smartphone bla bla | 11
2 |samsung s6.. | bla bla bla | 5
3 |samsung s5.. | bla bla | 0
我简化我的SQL,我想我真的非常接近:
SELECT
e.id, e.uid, e.tmstmp, e.title, e.desc, questioncount
FROM
entrys e
INNER JOIN
(
SELECT eid, COUNT(id) as questioncount
FROM question
WHERE eid = e.id
) q
- >未知列在 'where子句'
'e.id'我试图内部加入他们与“开”像:
ON q.eid = e.id
但像这样,不是所有行都被选中,并且questioncount从所有问题中获取值,而不管eid = e.id.
使用子查询,或者使用group by by join。 – RRK