Avatar billede skørsen Nybegynder
15. januar 2001 - 03:21 Der er 7 kommentarer og
2 løsninger

dubletter

Nedenstående er et udtræk fra en database.
Hvordan kan jeg nøjes med at Gydevang 39-41 3450 og Fjervej 4 9887 ud?
Dvs. jeg skal kun have dubletter tilbage. Det er ligemeget om der er en, to eller tre tilbage af hver dublet, altså mindst en dublet, og ingen andre.

Jeg håber I har løsningen klar:)

Gade            Postnr

Gydevang 39-41        3450
Gydevang 39-41        3450
Gydevang 39-41        3450
Langevej 3941        2340
Fjervej 4        9887
Ved svinget 45        4685
Ole Suhr´s gade 18    1354
Fjervej 4        9887
Avatar billede sark Nybegynder
15. januar 2001 - 03:26 #1
hvorfor står ikke helt
Avatar billede iss Novice
15. januar 2001 - 04:00 #2
Hvis det er for at fjerne dubletter, er der vel ikke meget andet at gøre end at vælge en af hver, og slet resten....

Alstå
SELECT DISTINCT adress FROM tabel
Smide et sted
Slet tabel
Fyld op fra backup....
Avatar billede erikjacobsen Ekspert
15. januar 2001 - 11:06 #3
det er en smule besværligt i MySQl, men muligt uden at programmere i pHP

opret tabellen temp på forhånd med passende navne og typer

insert into temp select count(*) as c,gade,postnr from DINTABEL group by gade,postnr

select gade,postnr from temp where c>2

drop table temp
Avatar billede erikjacobsen Ekspert
15. januar 2001 - 11:07 #4
øh - måske faktisk  c>=2    eller c>1  ;)
Avatar billede defrost Nybegynder
28. januar 2001 - 19:37 #5
Erik>> Det kan nu godt gøres nemmere...

select gade, postnr from DINTABEL group by gade, postnr having count(*) >= 2;

Avatar billede erikjacobsen Ekspert
28. januar 2001 - 20:15 #6
Ja, det KAN det jo. Tak, defrost!
Avatar billede defrost Nybegynder
28. januar 2001 - 21:11 #7
Det var skam så lidt. :)
Avatar billede skørsen Nybegynder
01. februar 2001 - 22:48 #8
Jeg havde helt glemt at acceptere jeres svar. Pinligt...
Jeg har hidtil brugt erikjacobsen\'s forslag, men vil nu ændre det til defrost.
Hvordan skal man så fordele pointene?
Avatar billede skørsen Nybegynder
15. februar 2001 - 00:31 #9
Jammen så tager jeg da og fordeler som jeg tror er mest rigtigt.
Og så gider jeg ikke høre noget vrøvl fra jer to :)
erikjacobsen-> du må denne gang nøjes med 10 point.
defrost-> 50 point til kontoen

Tak for hjælpen
/Skørsen
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