级
我是个初学者
我有两张桌子:
事件
每个事件具有唯一事件of的所有事件的详细信息。
用户
列出每个与会者的详细信息,列为eventname1和eventname2,列中包含注册的事件的事件of。(注意:一个特定的事件id可以出现在一个eventname1 ()列中,例如事件id 66可以出现在一个用户的事件id中,另一个用户可以出现在事件名称2中)
我想做什么
我想用我所有事件的详细信息回显一个表,并在每个事件中包含一个列(#与会者),其中列出了为该事件注册的用户数量。
我到目前为止有什么
SELECT COUNT( * )
FROM `users`
WHERE `eventname1` = (
SELECT `id`
FROM `events`
WHERE id =e.g.23 )我一直在尝试将它与一个连接结合使用,但我没有得到任何结果。如有任何建议,将不胜感激。
谢谢。
发布于 2012-08-29 10:43:53
创建3个表并将它们分开存储,您可以轻松地对其进行计数。
events
event_id, event_name, event_desc, etc_column
users
user_id, username, etc_colun
attendess_table
attendd_id, user_id, event_id,
select e.event_name, u.username
from attendess_table at
INNER JOIN users u ON u.user_id = at.user_id
INNER JOIN events e ON e.event_id = at.event_id
where u.user_id = 2数数
select count(user_id) from attendess_table where user_id = 2发布于 2012-08-29 10:45:27
尝尝这个
SELECT u.id,u.name,e.name, count(*)
FROM users u
left outer join events e
on u.id=e.id
group by u.id,u.name,e.namehttps://stackoverflow.com/questions/12176087
复制相似问题