Avatar billede compilos Nybegynder
22. november 2007 - 12:56 Der er 4 kommentarer og
1 løsning

Hjlælp til noget left join

Jeg har følgende SQL sætning:
SELECT tbl_boat_boat.id, tbl_boat_images.fld_image_name
FROM `tbl_boat_boat`
left join tbl_boat_images on tbl_boat_boat.id = tbl_boat_images.fld_boat_id

Det er så OK, - men den returnere også alle rækker i image tabellen.(det er jeg ikke interesseret i)

I min tabel tbl_boat_images har jeg alle billederne liggende, - her har jeg et felt der hedder fld_image_number. (den kan så være 1 til 10.)

I min left join vil jeg kun ha den laveste værdi for fld_image-number
tbl_boat_images.fld_boat_id peger selvfølgelig over på id´et i min tbl_boat_boat.!

dvs. Jeg vil ha´ alle rækker fra tbl_boat_boat tabellen og det tilhørende fld_image_name fra tbl_boat_image tabellen (med laveste fld_image_number), - hvis der forefindes noget.!


Håber det er til at forstå.!

/Compilos
Avatar billede fennec Nybegynder
22. november 2007 - 13:53 #1
Hvilken version af MySQL kører du?
Avatar billede compilos Nybegynder
22. november 2007 - 13:59 #2
Serverversion: 5.0.37
Avatar billede fennec Nybegynder
22. november 2007 - 14:20 #3
Jeg er ikke helt sikker på at denne metode er understøttet, men det må komma an på en prøve:

SELECT b.id, (select bi.fld_image_name from tbl_boat_images bi where bi.fld_boat_id=b.id order by fld_image_number limit 1) as image
FROM `tbl_boat_boat`
Avatar billede compilos Nybegynder
22. november 2007 - 14:28 #4
SELECT b.id,
(select bi.fld_image_name from tbl_boat_images bi where bi.fld_boat_id=b.id order by fld_image_number limit 1) as image
FROM `tbl_boat_boat` b

- Du manglede et "b" til sidst. - Så du får ingen point. :-)

SUPER Nice, Det virker - læg et svar og tusind tak for hjælpen!
Avatar billede fennec Nybegynder
22. november 2007 - 14:40 #5
Det er det gode ved MySQL v5. De har langt om længe fået subselect implementeret i en udgave, der længe har været i andre databaser.

.o) <-- One Eyed Jack
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