Oprettet ons. d. 02. marts 2005 kl. 11:11:28

avalon116
avalon116 (16.653 point. Point ude: 90)

joine tomme felter

Jeg har to tabeller, som jeg skal have joinet i en forespørgsel. Men hvis feltet er tomt i begge tabeller tager den det ikke med. Hvordan får jeg den til det?

Skrevet ons. d. 02. marts 2005 kl. 11:20:20| #1

undlader at oprette joins men i stedet bruger kriterier:

Select tabel1.*, tabel2.* From tabel1, Tabel2 Where (tabel1.ditfelt = tabel2.ditfelt) Or (tabel1.ditfelt is null And tabel2.ditfelt is null)

Skrevet ons. d. 02. marts 2005 kl. 11:37:40| #2

avalon116
avalon116 (16.653 point)
nej det dur ikke, det giver alt for mange felter. Nu tager den jo felter med på kryds og tværs bare de begge er tomme

Skrevet ons. d. 02. marts 2005 kl. 11:46:15| #3


Skrevet ons. d. 02. marts 2005 kl. 11:51:40| #4

avalon116
avalon116 (16.653 point)
SELECT tIndivid.*, tNyeBoliger.Kode
FROM tNyeBoliger INNER JOIN tIndivid ON (tNyeBoliger.Etage = tIndivid.Pri_Etage) AND (tNyeBoliger.Side = tIndivid.Pri_Side) AND (tNyeBoliger.År = tIndivid.År) AND (tNyeBoliger.Husnummer = tIndivid.Pri_Husnr) AND (tNyeBoliger.Vejkode = tIndivid.Pri_Vejkode) AND (tNyeBoliger.Bogstav = tIndivid.Pri_Bogstav);

Skrevet ons. d. 02. marts 2005 kl. 11:52:17| #5

avalon116
avalon116 (16.653 point)
jeg gætter på, at dit forslag virker, hvis der kun var et felt men der er flere

Skrevet ons. d. 02. marts 2005 kl. 11:53:00| #6

avalon116
avalon116 (16.653 point)
I hjælpen står der:
Joinforbinde felter, der indeholder Null-værdier
Når du joinforbinder tabeller i en forespørgsel, omfatter resultater kun poster, der ikke har Null-værdier i de tilsvarende felter. Hvis du f.eks. vil have vist en liste over leverandører og kunder, der bor i samme område, kan du oprette en forespørgsel, der medtager tabellerne Leverandører og Kunder, og tabellerne joinforbindes i feltet Område. Når du viser resultaterne, kan du kun se værdierne for de poster, der indeholder en værdi i feltet Område i begge tabeller.

men ikke noget om hvad man så skal gøre

Skrevet ons. d. 02. marts 2005 kl. 11:54:28| #7

hvilket felt er det, som kan være tomt?

Skrevet ons. d. 02. marts 2005 kl. 11:55:22| #8

avalon116
avalon116 (16.653 point)
der er 3:
bogstav, side og etage

Skrevet ons. d. 02. marts 2005 kl. 12:12:43| #9

det er straks lidt sværere....den kan jeg ikke lige greje. Men jeg tænker lige over den...

Skrevet ons. d. 02. marts 2005 kl. 12:39:26| #10

avalon116
avalon116 (16.653 point)
ok tak for det

jeg synes det er skørt at den ikke betragter tomme felter som værende ens og tager dem med også

Skrevet man. d. 07. marts 2005 kl. 22:34:22| #11

staticdata
staticdata (14.989 point)
Du skriver "Men hvis feltet er tomt i begge tabeller tager den det ikke med. Hvordan får jeg den til det?". Altså feltET. 02/03-2005 11:55:22 skriver du, at der er 3 felter... I stedet for ON ... AND (bogstav=bogstav) AND ... må du skrive ON ... AND ( (A.bogstav=B.bogstav) OR (A.bogstav Is Null AND B.bogstav Is Null) ) AND ...

Altså: Felterne er ens, eller felterne er begge null.

Dette er samme princip som tj 02/03-2005 11:20:20; du vil blot have det på flere felter...Hvis du kan bruge det, er det højst 10 points til mig og resten til tj.

Skrevet man. d. 14. marts 2005 kl. 10:40:36| #12

avalon116
avalon116 (16.653 point)
jeg har nu prøvet det du foreslår. I så fald skal det vist se sådan ud for at virke:

SELECT tIndivid.*, tNyeBoliger.Kode
FROM tNyeBoliger, tIndivid
WHERE (((tNyeBoliger.Etage)=[tIndivid].[Pri_Etage]) AND ((tNyeBoliger.Side)=[tIndivid].[Pri_Side]) AND ((tNyeBoliger.År)=[tIndivid].[År]) AND ((tNyeBoliger.Husnummer)=[tIndivid].[Pri_Husnr]) AND ((tNyeBoliger.Vejkode)=[tIndivid].[Pri_Vejkode]) AND ((tNyeBoliger.Bogstav)=[tIndivid].[Pri_Bogstav])) OR (((tNyeBoliger.Etage) Is Null) AND ((tIndivid.Pri_Etage) Is Null) AND ((tNyeBoliger.Side)=[tIndivid].[Pri_Side]) AND ((tNyeBoliger.År)=[tIndivid].[År]) AND ((tNyeBoliger.Husnummer)=[tIndivid].[Pri_Husnr]) AND ((tNyeBoliger.Vejkode)=[tIndivid].[Pri_Vejkode]) AND ((tNyeBoliger.Bogstav)=[tIndivid].[Pri_Bogstav])) OR (((tNyeBoliger.Etage)=[tIndivid].[Pri_Etage]) AND ((tNyeBoliger.Side) Is Null) AND ((tIndivid.Pri_Side) Is Null) AND ((tNyeBoliger.År)=[tIndivid].[År]) AND ((tNyeBoliger.Husnummer)=[tIndivid].[Pri_Husnr]) AND ((tNyeBoliger.Vejkode)=[tIndivid].[Pri_Vejkode]) AND ((tNyeBoliger.Bogstav)=[tIndivid].[Pri_Bogstav])) OR (((tNyeBoliger.Etage)=[tIndivid].[Pri_Etage]) AND ((tNyeBoliger.Side)=[tIndivid].[Pri_Side]) AND ((tNyeBoliger.År)=[tIndivid].[År]) AND ((tNyeBoliger.Husnummer)=[tIndivid].[Pri_Husnr]) AND ((tNyeBoliger.Vejkode)=[tIndivid].[Pri_Vejkode]) AND ((tNyeBoliger.Bogstav) Is Null) AND ((tIndivid.Pri_Bogstav) Is Null));

Det er en ordentlig omgang, og kører alt for tungt. Men ser ud til at give den rette løsning. Mon det kunneh ave været skrevet mere smart...jeg ved det ikke.

Jeg har valgt at løse problemet ved at undgå tomme felter (sætte nul i de tomme felter).

I skal selvf. alligevel have point for at give en løsning.

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Link til et dokument

Oprettet den 10. februar 2012 kl. 14.15
omn giver 60 point for svar | Giv et svar »

Formular med flere paramtre

Oprettet den 9. februar 2012 kl. 16.48
stuegnu giver 100 point for svar | Giv et svar »

Kodemodul ???

Oprettet den 8. februar 2012 kl. 17.05
olejohn giver 200 point for svar | Giv et svar »

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Her er fem sjove danske websider du skal kende

Trænger dine lattermuskler til en omgang fitness på dansk? Vi viser vej til fem websider fyldt med humor og vanvittig satire.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Nu kan du snart hente Windows 8

Den nye offentlige betaversion af Windows 8 er klar i denne måned.


Nyheder fra Computerworld

Teaser billede

Måske snart slut med Androids helt store problem

Android-platformen har længe været plaget af et særligt problem. Men måske er problemet nu ved at være elimineret.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger