24. juni 2002 - 21:18Der er
4 kommentarer og 1 løsning
2 tabeller relation men tomt resultat !
Jeg har 2 tabeller der indbyrdes har relationer. forbrug.ForID, og Install.ForbID Install tabellen indeholder et tal for el-forbruget.
Det jeg gerne vil, er at udtrække alle rækker i forbrug, og samtidig udtrække deres forbrug-Sum fra Install.
Problemet med nedenstående SQL-String er, hvis der ikke findes en række i Install så returneres der slet ikke noget.
SELECT forbrug.Sted, Sum(install.forbrug) AS total, forbrug.ForID, forbrug.FakturID FROM forbrug INNER JOIN install ON forbrug.ForID = install.ForbID GROUP BY forbrug.Sted, forbrug.FakturID, forbrug.ForID, forbrug.FakturID HAVING (((forbrug.FakturID)=1));
hi bensen>an INNER JOIN will only return record where there are records on BOTH sided of the JOIN you can alter this to an OUTER (RIGHT OR LEFT) to return those where ther are NO records on one side of the JOIN. Th easiest way to do this is right click on the thin line between th two tables and then choose which ever selection suits you requirement!
For some reason I was thinking this was Access, but now I see its SQL Server and you dont have Enterprise Manager. Well you can start by chaging your INNER JOIN to a LEFT OUTER JOIN and if that doesnt help try RIGHT OUTER JOIN and if that doesnt help then ?
Du havde ret første, jeg tænkte på Access, da jeg udvikler dette på En PWS med Access. Når jeg er færdig skal det på en IIS med MS SQL som jeg ikke har adgang til som admin.
Men det virkede så tak for hjælpen ! ;-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.