Avatar billede jnoval Nybegynder
18. august 2010 - 15:43 Der er 4 kommentarer og
1 løsning

Select + og tomme værdier

Jeg skal have sammenlagt nogle felter fra en table til et felt i en anden/ny tabel.

Indtil nu har jeg følgende:
SELECT GlobalItemDataList.name, 'Intralink site: Porta Westfalica'+Chr(13)+Chr(10)+'Name: '+[GlobalItemDataList].[Name]+Chr(13)+Chr(10)+'Revision: '+GlobalItemDataList.revision+Chr(13)+Chr(10)+'Version: '+GlobalItemDataList.version+Chr(13)+Chr(10)+'Folder: '+GlobalItemDataList.folder+Chr(13)+Chr(10)+'Releaselevel: '+GlobalItemDataList.RL+Chr(13)+Chr(10)+'Article_No: '+GlobalItemDataList.Article_No AS legacy
FROM GlobalItemDataList;

Resultat er:
Intralink site: Porta Westfalica
Name: 1417938.prt
Revision: 1
Version: 0
Folder: Root Folder/Porta/power_wheel_chairs/CW1
Releaselevel: Concept
Article_No: 1417938

Problem er at jeg får kun et resultat hvis alle felterne indholder data og det gør de langt fra.
Hvis et felt (f.eks. Article_No) ikke indholder data kunne jeg godt tænke med det således:
Intralink site: Porta Westfalica
Name: 1417938.prt
Revision: 1
Version: 0
Folder: Root Folder/Porta/power_wheel_chairs/CW1
Releaselevel: Concept
Article_No:

Eller således:

Intralink site: Porta Westfalica
Name: 1417938.prt
Revision: 1
Version: 0
Folder: Root Folder/Porta/power_wheel_chairs/CW1
Releaselevel: Concept

Desuden skal jeg køre forespørgslen mod flere forskellige input tabeller. De indholder ikke alle de samme felter. Det ville være dejligt hvis jeg kunne bruge samme SQL men hvor den sprang felter over som ikke findes
Avatar billede Slettet bruger
18. august 2010 - 17:57 #1
vba-editor->immediate window:
?"name:" & null
name:
?"name:"+null
Null
18. august 2010 - 19:06 #2
Jeg forstaar at du soeger at loese problemerne ved hjaelp af sql queries.  Du stiller to problemer op:

(1)at faa et resultat hvis et eller flere feltert i tabellen er tomme. Det faar du ved at bruge Nz funktionen.  Hvis i stedet for  "SELECT revision ..." du siger SELECT Nz(revision) saa faar du indholdet af revision hvis det bestaar og ellers '' (altsaa space). Saa hvis revision er tomt faar du med din query:
...
Name: 1417938.prt
Revision:
Version: 0
...

Du soeger yderligere en loesning hvor ogsaa teksten 'Revision:' forsvinder, men den kender jeg ikke i sql.

(2)  at faa et resultat hvis nogle af de felter der spoerges paa ikke eksisterer (at bruge den samme query paa tabeller med faerre felter.)  Den kender jeg heller ikke i sql.

i VBA kan det hele naturligvis lade sig goere.
Avatar billede jnoval Nybegynder
19. august 2010 - 12:48 #3
Christian: Nz var løsningen på (1). Det var det vigtigste. Jeg ønsker at have det i SQL og ikke vba. Tak. Smid et svar.
19. august 2010 - 14:35 #4
Svar fra mig.
Avatar billede Slettet bruger
22. august 2010 - 16:16 #5
undtaget kompatibilitets hensyn, hvor streng concatenering ikke kan ske med '&' er nz overflødig.

?"name:" & null & vbcrlf+ "revision:"
name:
revision:
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester