04. august 2003 - 15:25Der er
7 kommentarer og 1 løsning
Joine på en attribut uden nøgle
Hejsa!
Har følgende problem, at jeg arbejder på 2 tabeller. Den ene indeholder en masse information, samt et stk. attribut som kan være NULL som jeg skal benytte i den anden tabel i en join for at trække nogle andre værdier ud der. Disse værdier skal kun trækkes ud hvis den første attribut ikke er NULL, for ellers får man fejl på join'en.
Kan dette gøres på en køn måde i én stored procedure, eller skal man ud i 2 eller en anden løsning? - For jeg har overvejet at man kan tjekke på om den er NULL, og så lave 2 forskellige queries til hver situation - Dog har jeg nemlig samme situation med en anden attribut, hvilke gør det bliver til en masse IF...ELSE.... derned af.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jo, men så skal jeg lave en eller anden form for check, som jeg også efterspørger - Den første attribut kan nemlig godt være NULL, og så fejler den inner join, da den ikke har noget at sammenligne med.
Ahhh! - Det er ikke databasen der fejler, men ASP'en da jeg arbejde på et resultset der er tomt. Men det betyder at istedet for at undlade de ting der ikke eksisterer i databasen, så undlades alle kolonner i hver række. Det var jo meningen at et felt bare skulle være tomt hvis den inner join ikke virkede.
Så lige for at understrege den nuværende situation, så returneres der et tomt resultset lige så snart en inner join fejler, istedet for det bare er det ene felt der mangler. Hvad gør man så?
Har løst det - Svaret var at bruge en outer join istedet for. På den måde returnes et resultset med de værdier der er gode nok :-). Så lærte jeg også noget om det!.
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.