Avatar billede a_c Nybegynder
10. januar 2002 - 16:41 Der er 5 kommentarer og
1 løsning

Sql statement der kan gøre dette

Jeg har en tabel der hedder difmedarb.
Den tabel indeholder et mednr felt der er unikt samt et name felt. Name feltet indeholder hele medarbejderens navn.
Tabellen er nu udvidet til at have et fornavn og et efternavn felt.
Det jeg skal er altså at tage det der står i Name feltet og tage det første ord og smide i fornavn feltet og resten i efternavn feltet.
Det må da kunne gøres i en sql statement med en subquery eller noget.
Er der nogen der kan hjælp?

mvh a_c
Avatar billede teepee Nybegynder
10. januar 2002 - 16:52 #1

update difmedarb
set fornavn = substr(name,1,instr(name, \' \')),
  efternavn = substr(name,instr(name, \' \')+1);
Avatar billede a_c Nybegynder
10. januar 2002 - 16:57 #2
Hej teepee Tak for svaret.
Skal jeg ikke først vælge alle records i tabellen eller hvordan ?

a_c
Avatar billede a_c Nybegynder
10. januar 2002 - 17:34 #3
nårh ok. Hvis man siger update uden where så kører den hele baduljen igennem.
Jeg har ikke lige fået prøvet det men den er sgu nok god nok.
Tak.
a_c
Avatar billede a_c Nybegynder
11. januar 2002 - 10:02 #4
teepee>> instr funktionen findes ikke i mssql.
Ved du hvad den tilsvarende hedder i mssql, hvis den findes?
Avatar billede teepee Nybegynder
11. januar 2002 - 10:44 #5
instr er vist ikke lige ansi. Jeg har ikke lige så meget forstand på mssql, men du kan måske bruge charindex() i mssql
Avatar billede teepee Nybegynder
11. januar 2002 - 10:48 #6
Læg lige mærke til at rækkefølgen af argumenterne er omvendt i charindex ift. instr
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