按日期连接两个表,返回按日期分组的数据

时间:2015-08-17 08:03:35

标签: mysql date join group-by

我有两个表tbl_live_linkstbl_total_links都有两个列dateSubmittedpidlinkSubmitted,它们之间没有任何关系。但要求是获取每月提交的链接总数。

我正在使用这些查询::

    SELECT dateSubmitted
         , sum(`linkSubmitted`) as total 
      FROM `tbl_total_links` 
     where pid = 1
     group 
        by `dateSubmitted` 
     order 
        by `dateSubmitted` DESC 
     limit 0,6

此查询的结果是::

dateSubmitted total
2015-08-10       20
2015-07-06       56

AND

SELECT dateSubmitted, sum(`linkSubmitted`) as live FROM `tbl_live_links` where pid = 1 group by `dateSubmitted` order by `dateSubmitted` DESC limit 0,6

此查询的结果是::

  

dateSubmitted   活

     

2015年8月10日   59

     

2015-07-06   78

我想要这样的结果

  

dateSubmitted   总   活

     

2015年8月10日   20 59

     

2015-07-06   56 78

两个表都可以在特定月份进行多次提交,但我想要从一个表中提交一个月内提交的所有链接的总和

2 个答案:

答案 0 :(得分:0)

试试这个

SELECT tbl_live_links.dateSubmitted, sum(tbl_live_links.`linkSubmitted`) as live ,sum(tbl_total_links.`linkSubmitted`) as total
     FROM `tbl_total_links`, `tbl_live_links` 
     where pid = 1
     and tbl_live_links.dateSubmitted = tbl_total_links.dateSubmitted
     group 
        by `tbl_live_links.dateSubmitted` 
     order 
    by `tbl_live_links.dateSubmitted` DESC 
 limit 0,6

答案 1 :(得分:0)

在这里你可以尝试简单的连接条件,希望这可以解决你的问题,我从你的两个声明中取得的连接条件, 选择     提交日期,     sum(tlink.linkSubmitted)为总数,     sum(llinks.linkSubmitted)为live 从     tbl_total_links tlink     llinks.pid = tlink.pid上的内连接tbl_live_links llinks 哪里   llinks.pid = 1 通过...分组     tlink.dateSubmitted,     llinks.dateSubmitted 订购     tlink.dateSubmitted,     llinks.dateSubmitted     降序 限制0,6