Hej. <code>Problem med SQL fråga.
Har två tabeller.
[dateDummy]
...
Name
SchemaDate
Time
...
[absenceDummy]
....
EmployeeName
SchemaDate
Time
...
dateDummy tabellen är (som namnet beskriver) en tabell där namn och alla datum genererats utifrån ett startdatum och ett slutdatum.
Ex.
Namn SchemaDatum Time
------------------------------------------
Kalle Kula 2005-01-01 0,00
Kalle Kula 2005-01-02 0,00
Kalle Kula 2005-01-03 0,00
....
Kalle Kula 2005-01-31 0,00
Britta Bulle 2005-01-01 0,00
Britta Bulle 2005-01-02 0,00
Britta Bulle 2005-01-03 0,00
...
Britta Bulle 2005-01-31 0,00
osv
absenceDummy är en tabell som innehåller frånvarotider på ett visst datum.
Ex.
Namn SchemaDatum Time
------------------------------------------
Kalle Kula 2005-01-01 3,00
Kalle Kula 2005-01-03 8,00
Britta Bulle 2005-01-03 0,00
osv
Nu vill jag i en selectsats plocka ut allt i absenceDummy (Namn, datum och tid) och fylla ut de datum som saknas i tabellen med datum från dateDummy. Tex så har ju bara Kalle Kula frånvaro (01, och 03) så då vill jag även plocka ut (02, 04,05 osv).
Ex.
Namn SchemaDatum Time
------------------------------------------
Kalle Kula 2005-01-01 3,00
Kalle Kula 2005-01-02 0,00
Kalle Kula 2005-01-03 8,00
Kalle Kula 2005-01-04 0,00
Kalle Kula 2005-01-05 0,00
....
Kalle Kula 2005-01-31 0,00
Hur löser jag detta??? Testade att först plocka ut från absenceDummy tabellen och göra en union med en select mot dateDummy tabellen (med ett NOT EXISTS statement) men fick ingen träff i dateDummy tabellen då.Sv: Problem med SQL fråga.
select a.employeename,a.schemaDatum, coalesce(a.time,d.time)
from absenceDummy a left join dateDummy d
on a.employeeName = a.name
and a.schemaDatum = d.schemaDatum
</code>