webForumDet fria alternativet
Logga in / Bli medlem

SQL -> select inkl joins...

ASP

5 svar · 163 visningar · startad av solbulle

Medlem sedan mars 20015 287 inlägg
Trådstart#1

Då var det dags igen.

Denna SQL plockar ut en artikel med alla tillhörande bilder.

Nu vill jag fortfarande ha ut detta men jag vill även ha ut allt ur tblbild så jag kan lista alla bilder i en selectbox.
Jag måste alltså på något sätt kunna skilja ut de bilder som är relaterade.
Hm... känns som jag gjort/frågat detta förr.
(Ska ju bli lite tvärtom, alla bilder med tillhörande artikel så att säga.)

SQL = "SELECT * FROM (tblwho LEFT OUTER JOIN tblrelation ON tblwho.fldartikelID=tblrelation.fld_who_id) LEFT OUTER JOIN tblbild ON tblrelation.fld_bild_id = tblbild.fldBildid where fldartikelID = " & request.querystring("ID") & " order by fldPlace"

Följdfråga redan nu, hur markerar jag mina "förvalda" i min selectbox sen?

Medlem sedan dec. 200012 464 inlägg
#2
sql = "select tblBild.*, case when tblrelation.fld_bild_id is null then '' else ' selected ' end as selected from tblbild.fldBildid left outer join tblrelation on tblbild.fldBildid = tblrelation.fld_bild_id "

set rs = databas.execute(sql)
if not rs.eof then
   response.write "<select name='bilder'>"
   while not rs.eof
   response.write "<option value='" & rs("fldBildid") &"'" & rs("selected") & ">" & rs("titel") & "</option>"
   rs.movenext
   wend
response.write "</select>"
end if
Medlem sedan mars 20015 287 inlägg
#3

Hm.. det vill inte, "Unspecified error" (på sql-raden) säger webbläsaren, inte mycke hjälp där inte.

Tilläggas kan att jag kör Access.

Någon annan ide?

Medlem sedan dec. 200012 464 inlägg
#4

Jaha, acces var det. Den sql-satsen fungerar inte i Access.

sql = "select tblBild.*, iif(tblrelation.fld_bild_id is null,'', ' selected ') as selected " & _
"from tblbild.fldBildid left outer join " & _
" tblrelation on tblbild.fldBildid = tblrelation.fld_bild_id "

set rs = databas.execute(sql)
if not rs.eof then
response.write "<select name='bilder'>"
while not rs.eof
response.write "<option value='" & rs("fldBildid") &"'" & rs("selected") & ">" & rs("titel") & "</option>"
rs.movenext
wend
response.write "</select>"
end if
Medlem sedan mars 20015 287 inlägg
#5

Nja, det vill inte med den heller och i mina ögon ser det inte riktigt ut som att den kan göra vad jag vill uppnå.

Denna tar fram en artikel (från tblwho) samt de bilder som är ihopkopplade i tblrelation, MEN jag vill även plocka ut ALLA bilder i tblbild, men på något sätt kunna "markera" de som överenstämmer.

SQL = "SELECT * FROM (tblwho LEFT OUTER JOIN tblrelation ON tblwho.fldartikelID=tblrelation.fld_who_id) LEFT OUTER JOIN tblbild ON tblrelation.fld_bild_id = tblbild.fldBildid where fldartikelID = " & ID & " order by fldPlace "

Jag skulle verkligen vilja ha de tillhörande bildernas "plats" i det recordset som alla bilderna utgör.

Kan man göra så?

Red. Kanske skulle ta med koden också...

Medlem sedan mars 20015 287 inlägg
#6

Nya friska tag.
Jag har mina bilder i en tabell:

SQL2="SELECT * FROM tblbild order by fldBildid"

Men nu är det så finurligt att jag vil plocka ut dom sorterade så att de bilder/poster i denna tabell som överenstämmer med ett ID i min relationstabell skall hamna överst.

Alltså typ något liknande detta:

ID är ett värde från en querystring.

SQL2="select * FROM tblbild order by (tblrelation.fldrank where tblrelation.fld_who_id = ID), tblbild.fldBildid"
263 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)