2017-09-02 6 views
0

Je suis en train de se joindre à deux tableaux ci-dessousjoindre deux tables avec un intervalle de date 3 jours avant et 3 jours après

tableau 1

ID | submit_checkdate 
----- | ----------- 
1  | 2017-07-31 
2  | 2017-07-31 
3  | 2017-07-31 
4  | 2017-07-15 

Tableau 2

ID | actual_checkdate 
----- | ---------- 
1  | 2017-07-30 
2  | 2017-07-25 
3  | 2017-08-01 
4  | 2017-07-15 

Résultats attendus

ID | actual_checkdate | submit_checkdate 
----- | ----------  | ---------- 
1  | 2017-07-30  | 2017-07-31 
3  | 2017-08-01  | 2017-07-31 
4  | 2017-07-15  | 2017-07-15 

fondamentalement, j'ai besoin les résultats pour montrer toutes les dates de vérification réelles qui sont dans les 3 jours avant et après la date de vérification de soumission.

ne sais pas si je dois joindre les tables avec l'intervalle ou le faire dans le wherr

+0

Vous avez donc besoin d'une vue avec une date de vérification a différence égale à moins de 72 heures, non? –

+0

J'ai besoin d'une vue avec n'importe quelle date de vérification qui est égale à moins de 72 heures et égale à 72 heures. – nick

Répondre

0

Ajouter la condition à la jointure.
on actualcheckdate between dateadd (dd, -3, submitcheckdate) and dateadd (dd, 3, submitcheckdate)
Ou de quelque façon le tour devrait être

0

Quelque chose comme.

SELECT * FROM table1 INNER JOIN table2 ON table2.actual_checkdate BETWEEN dateadd (dd, -3, table1.submitcheckdate) AND dateadd (dd, 3, table1.submitcheckdate)