Avatar billede stig3 Mester
08. august 2001 - 08:53 Der er 5 kommentarer og
1 løsning

view

Jeg skal bruge et view

problemet er at jeg har en tabel, der indeholder:
fornavn
mellemnavn
efternavn

Det vil jeg gerne slå sammen i mit view til:
Navn

Hvordan gør man det ?
Avatar billede torbenkoch Nybegynder
08. august 2001 - 08:56 #1
Du kan f.eks. lave et view, der ser sådan ud:

SELECT Fornavn + \' \' + Mellemnavn + \' \' + Efternavn AS Navn from tabel

Avatar billede torbenkoch Nybegynder
08. august 2001 - 08:58 #2
Der kommer dog et mellemrum for meget, hvis Mellemnavn er tomt.

Derfor kan man gøre dette:

SELECT REPLACE(Fornavn + \' \' + Mellemnavn + \' \' + Efternavn, \'  \', \' \') AS Navn FROM tabel

Det første sæt \'  \' indeholder to mellemrum, det andet sæt \' \' indeholder et mellemrum.
Avatar billede stig3 Mester
08. august 2001 - 09:17 #3
smart, smart

Det virker jo fint. Mens jeg har fat i dig så forhøjer jeg lige med 30 og spørger påny....

Jeg kunne godt tænke mig at tage fra feltet kontor hvis feltet afdeling er tomt.

altså:
if kontor = \'\' then
  kontornavn = afdelingsnavn
else
  kontornavn = kontornavn
end if

selvfølgelig i et view..............
Avatar billede torbenkoch Nybegynder
08. august 2001 - 10:06 #4
Ok - den klarer vi da også (beklager det tog så lang tid, skulle lige ud af toget igen... ;-))

Hvis kontor rent faktisk indeholder en tom streng og ikke er NULL, ville jeg gøre sådan (du roder lidt rundt i kontor, kontornavn og afdelingsnavn):

SELECT
  CASE Kontor
    WHEN \'\' Afdelingsnavn
    ELSE Kontor
  END AS Kontornavn
FROM tabel

Du kan sikkert se fidusen i det.

Indeholder Kontor derimod en NULL, så kan man gøre sådan her:

SELECT
  CASE IsNull(Kontor, \'.\')
    WHEN \'.\' Afdelingsnavn
    ELSE Kontor
  END AS Kontornavn
FROM tabel
Avatar billede stig3 Mester
08. august 2001 - 10:16 #5
Takker ærbødigst og håber at du havde en bedre oplevelse med DSB end jeg generelt har :-)
Avatar billede torbenkoch Nybegynder
08. august 2001 - 10:19 #6
Hehe, selv tak!.

For en gangs skyld kørte de som de skulle!
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
Computerworld tilbyder specialiserede kurser i database-management

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