Come scrivere unirsi query di selezione in MS Access?
-
19-09-2019 - |
Domanda
Dire che ho queste tabelle con i nomi dei campi sotto.
DailyLeaveLedger
dldEmployeeID
dldLeaveDate
InvoiceHeader
invEmployeeID
invWeekEnding
InvNumberWeeksCovered
Quindi voglio una query seleziona lasciare giorni in cui una fattura coperture che lasciano cioè invWeekEnding 2 ottobre e InvNumberWeeksCovered = 1 allora qualsiasi congedo nel range 26 Settembre - 2 Ottobre è ok. Inoltre si deve avere campi EmployeeID partita.
Nel MSAccess 2003 Si prega di?
Soluzione
Prova questo
SELECT InvoiceHeader.invEmployeeID,
InvoiceHeader.invWeekEnding,
DateAdd("d",-[InvNumberWeeksCovered]*7,[invWeekEnding]) AS StartDate,
DailyLeaveLedger.dldLeaveDate
FROM InvoiceHeader
INNER JOIN DailyLeaveLedger
ON InvoiceHeader.invEmployeeID = DailyLeaveLedger.dldEmployeeID
WHERE (((DailyLeaveLedger.dldLeaveDate)
Between [invWeekEnding]
And DateAdd("d",-[InvNumberWeeksCovered]*7,[invWeekEnding])));
Quello che ho fatto è stato aggiunge -7 * InvNumberWeeksCovered al invdate, e quindi verificare la presenza di date fra questi.
La speranza che aiuta.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow