2014-01-26 125 views
0

我有两个表,我想要查询。多个SQL查询

members_table

--date_joined--user_id--email--user_name 

messages_table

--date_sent--message_id--message--user_name 

我想创建一个查询,将计算的新成员注册量每天(以日期之间),也在相同的两个日期之间发送的电子邮件。

我想用这个数据来创建一个表,显示了这两个表的每一天的计数(日期2之间)

我的问题是在SQL查询,如何纠正它。我曾尝试过各种这一点,但它不工作

这是我到目前为止已经试过,但它不是给正确的结果

SELECT COUNT(user_id) AS memebrs, 
     date_joined AS date, 
     (SELECT 
      COUNT(message_id) 
      FROM messaages_table) 
     )AS messages 
    FROM members_table 
    WHERE date_joined >= '2013-01-01' 
    AND date_joined <= '2013-01-31' 
    GROUP BY date 
+4

后你已经尝试了什么? –

+0

我刚刚更新,显示我迄今为止所尝试的 – fredmarks

+0

消息是否与user_name有关? –

回答

1

试试这个

SELECT COUNT(a.user_id) AS memebrs, a.date_joined AS JoinDate , COUNT(b.message_id) 
    FROM members_table a 
    JOIN messaages_table b ON a.user_name = b.user_name 
    WHERE a.date_joined BETWEEN '2013-01-01' AND '2013-01-31' 
    GROUP BY a.date_joined; 
+0

我需要这两个表......我上面给出的只是表的一部分,它们有更多的列,它们阻止它们成为一个表 – fredmarks

+0

请详细说明你的问题,你确切需要的是不明确的。用一些示例数据解释。 –

+0

我基本上有人注册,我把它存储在一张桌子里...同样的人们然后发送各种消息给对方等...我把它存储在另一张桌子...我想能够产生一个报告将显示我在一个单一的HTML表格,网站上的日常活动... [新注册,新消息,等等]在搜索查询每一天...即对各种表中的行进行计数并将其作为单个数组按日期分组 – fredmarks