Avatar billede zkill Nybegynder
09. marts 2007 - 11:31 Der er 5 kommentarer og
1 løsning

Merge 2 columns

Dav jeg står med det problem..
Jeg skal ha selectet noget fra en database som har 3 columns..
id, ds0, ds1.

Jeg skal have flette ds0 og ds1 sammen til et felt i min sql select.. Nogen der ved hvordan jeg kan gøre det.?

Det er sådan at ds0 og ds1 er doubles... og jeg skal kun have de 10 største værdier..
Så skal have flettet dem sammen, og order by DESC LIMIT 10...
men jeg kan ik finde ud af at flette dem sammen. :(

/Zkill...
Avatar billede arne_v Ekspert
12. marts 2007 - 01:20 #1
SELECT felt1+felt2 AS begge FROM tabel ORDER BY begge DESC LIMIT 10;

eller

SELECT felt1*10000+felt2 AS begge FROM tabel ORDER BY begge DESC LIMIT 10;

eller

SELECT CAST(felt1 AS VARCHAR) || CAST(felt2 AS VARCHAR) AS begge FROM tabel ORDER BY begge DESC LIMIT 10;

afhængig af hvordan du vil have de 2 double felter "merget"
Avatar billede zkill Nybegynder
12. marts 2007 - 12:36 #2
altså de 2 felter skal ikke +.... de skal merges..
ds0 = 3, 43, 4, 1
ds1 = 5, 1, 6, 56, 23

Begge = 3, 5, 43, 1, 4, 6, 1, 56, 23
Sorted limit 10 = 56, 43, 23, 6, 5, 4, 3, 1, 1...
Avatar billede arne_v Ekspert
12. marts 2007 - 14:11 #3
(SELECT ds0 AS f FROM t)
UNION
(SELECT ds1 AS f FROM t)
ORDER BY f DESC LIMIT 10
Avatar billede arne_v Ekspert
06. maj 2007 - 23:20 #4
all set ?
Avatar billede arne_v Ekspert
17. juni 2007 - 05:21 #5
??
Avatar billede zkill Nybegynder
31. juli 2007 - 10:41 #6
Hehe sorry, har haft lidt travlt.. så har ik været her inde i lang tid..
Men brugte den løsning at jeg hentede hver sin colum ned.. og mergede dem via mit perl script... Den løsning jeg lige ku få til at virke den gang...
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