webForumDet fria alternativet
Logga in / Bli medlem

Destinct Join-sats

Databaser & SQL

5 svar · 385 visningar · startad av jockooono

Medlem sedan mars 200561 inlägg
Trådstart#1

SQL-saten nedan använder jag för att för att joina tabellen produkter men tabellen produktbilder. Hur gör jag om en produkt har flera bilder men jag vill bara att SQL-satsen ska returnera en rad. Har försökt med SELECT DISTINCT men får det inte att fungera.

SELECT Product.ProductID, Product.Productname, Product.Producttext,
Productimage.ImageID, Productimage.ProductID, Productimage.Imagename, Productimage.Description 
FROM Product LEFT JOIN Productimage ON Product.ProductID = Productimage.ProductID
Medlem sedan dec. 200012 464 inlägg
#2

Vad skulle den raden innehålla då? Om du vill ha alla bilder så är det en presentationssak som man företrädelsevis hanterar i sin applikation och inte med SQL.

Medlem sedan mars 200561 inlägg
#3

Jag vill att alla produkter skrivs ut på en sida och där ska det bara stå om produkten har en bild eller inte. Typ:

<%
Response.Write(RS("Productname"))

If Len(RS("Imagename")) > 0 Then
Response.Write("Bild finns")
Else
Response.Write("Bild finns inte")
End if
%>

Medlem sedan dec. 200012 464 inlägg
#4
SELECT 
   ProductID,
   Productname, 
   Producttext,
(select max(imagename)
    from productimage
  where  Productimage.ProductID = product.productid) as imagename
FROM Product
Medlem sedan mars 200561 inlägg
#5

Prefect! Tackar

Medlem sedan juni 200032 967 inlägg
261 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)