Avatar billede donslund Nybegynder
03. april 2007 - 10:33 Der er 5 kommentarer og
1 løsning

Select i en select

Jeg skal finde den laveste værdi i en tabel. eksempelvis den billigste pris. I en anden tabel skal jeg så finde de personoplysninger der passer til denne værdi. Burde det ikke kunne gøres i 1 sætning? Har forsøgt med nedenstående, men uden held.

select * from person_tbl where id = ('select person_id from pris_tbl where produkt_id = 65 AND price = MIN(price)')

Hvordan gøres det korrekt?
Avatar billede barklund Nybegynder
03. april 2007 - 10:46 #1
Det nemmeste ville nok være en join, en order og en limit:

select person_tbl.* from person_tbl inner join pris_tbl on person_tbl.id = pris_tbl.person_id where produkt_id = 65 order by price limit 1

Det burde vel give et fornuftigt resultat :)

--
Morten Barklund
Avatar billede donslund Nybegynder
03. april 2007 - 11:07 #2
Ja, det var jo det der skulle til. Det anede mig at det var Inner Join der skulle bruges, men har desværre aldrig rigtig fået styr på det.

Et lille tillæg.
Kan jeg tjekke på, om der overhovedet er noget der passer i pris tabellen?
Avatar billede barklund Nybegynder
03. april 2007 - 11:20 #3
Noget der passer? Hvad tænker du på? Der er vel altid en mindste pris?
Avatar billede donslund Nybegynder
03. april 2007 - 12:39 #4
Ja, det har du naturligvis ret i. Smid et svar.
Avatar billede barklund Nybegynder
03. april 2007 - 13:20 #5
Finfin :)
Avatar billede barklund Nybegynder
04. april 2007 - 09:14 #6
Taktak :)
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