我正在尝试计算用户上传照片后发送的所有邮件。
我正在尝试这样的事情。
select messages.created_at, count(*) as count from messages
inner join users on messages.user_id = users.id
inner join photos on photos.user_id = users.id
where
some_users_messages.created_at > some_users_first_photo.created_at
group by YEARWEEK(messages.created_at)
我认为这需要是一个子查询?我不确定如何在MySQL中对一个特定用户的消息/照片做这个概念。有什么想法吗?
谢谢!
答案 0 :(得分:2)
这会计算每个用户第一张照片后发送的邮件数量:
select messages.user_id
, count(*) as count
from messages
where messages.created_at >
(
select min(created_at)
from photos
where photos.user_id = messages.user_id
)
group by
messages.user_id