0
Source Tables:
(MAILING)
| ID | name | dt |
-----------------------------------
| 1 | foo | 15-DEC-15 01.20.25.000000000 AM
| 2 | bar | 16-DEC-15 01.20.25.000000000 AM
(OPEN)
| ID | mailing | dt |
---------------------------------
| 1 | 1 | 15-DEC-15 03.20.25.000000000 AM
| 2 | 1 | 15-DEC-15 05.20.25.000000000 AM
| 3 | 2 | 16-DEC-15 03.20.25.000000000 AM
Expected result:
| name | TOTAL |
----------------------
| foo | 1 |
| bar | 0 |
予想された結果からわかるように、送信後24時間以内に再開された電子メールをカウントする必要があります。 電子メールが開かれた今カウントする24時間未満の後に私が持って送信しますSqlの選択カウントのみ日付範囲の間の繰り返し回数
SELECT M.ID, COUNT(*) TOTAL
FROM MAILING.MAILING M
LEFT JOIN MAILING.OPEN O
ON O.mailing = M.ID
-- mailing between year
WHERE M.dt >= to_timestamp('01-Jan-2015', 'dd-MON-yyyy')
AND M.dt <= to_timestamp('31-Dec-2015', 'dd-MON-yyyy')
-- opened less than 24h after send
AND O.dt <= m.DATA_MAILING + INTERVAL '24' HOUR
GROUP BY M.ID, M.name, M.dt
ORDER BY M.dt ASC
おかげであなたの助けと時間のために!