Oracle SQL - 内部加入&计数

时间:2013-08-30 03:36:17

标签: sql oracle

我有以下Oracle数据库,我需要返回以下内容: d.directdomain,d.domaindisplayname,r.lastdate(最新)和count(多少次,r.directdomain = d.directdomain)

基本上,我在 r db中有很多“人”,在 d 中有“域”。我需要返回R中一个人访问每个“域”的次数,并返回他们上次访问域时的次数。 我尝试了一些东西,但似乎通过使用count,我需要GROUP BY日期,所以这让我感到困惑。

返回示例: 1,Site1,21 / 05 / 13,5 2,Site2,20 / 05 / 13,2

d
directdomain (PK)
domaindisplayname

r
rsld         (PK)
lastdate
directdomain (FK)

1 个答案:

答案 0 :(得分:1)

你在找这样的东西吗?

SELECT d.directdomain, 
       d.domaindisplayname,
       MAX(r.lastdate) lastdate,
       COUNT(*) rcount
  FROM d JOIN r
    ON d.directdomain = r.directdomain
 GROUP BY d.directdomain, d.domaindisplayname

示例输出:

| DIRECTDOMAIN | DOMAINDISPLAYNAME |                      LASTDATE | RCOUNT |
|--------------|-------------------|-------------------------------|--------|
|            1 |             Site1 | August, 15 2013 00:00:00+0000 |      4 |
|            2 |             Site2 | August, 18 2013 00:00:00+0000 |      3 |

这是 SQLFiddle 演示