22. november 2007 - 12:56Der 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.!
Mød TrackMan og Veo på Computerworld Cloud & AI Festival og hør, hvordan tech ændrer måden, vi træner og udvikler talent – fra skolebold til The Masters.
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`
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!
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
Synes godt om
Ny brugerNybegynder
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.