Halloj!
Har sökt på forumet och provat lite men just nu har jag fått fnatt på alla distinct och group by :OO
Följande problem har jag..
Ska lista produkter ur en produkttabell.
Varje produkt finns med 3 olika ID i DB'n, anledningen är att varje storlek har ett eget ID.
såhär kan det se ut...
(rödmarkerat är det som skiljer (storleksnummer)
tblProdukter (visar inte hela tabellstrukturen)
ID | Artnr | Pris | StilID
11020049002 | 303-1 | 330 | 25
11020049004 | 303-1 | 330 | 25
11020049006 | 303-1 | 330 | 25
När jag nu listar produkterna med distinct så visas varje produkt x 3, å det funkar ju inget vidare...
Därför kör jag just nu en lite kringgående variant:
distinct(Left(ID, 9). Tittar man i db-tabellen ovan så förstår du varför...
Och eftersom jag kör distinct(Left(ID, 9) så kan jag inte sortera efter en speciell stil, för den kolumnen finns inte med i SELECT.
Såhär gör jag just nu:
SQL = " SELECT DISTINCT(Left(ID, 9)) FROM tblProdukter WHERE Aktiverad = 1 AND Len(ID) > 1 "
Set rs = Databas.Execute(SQL)
arrGetProd = rs.Getrows()
rs.Close : Set rs = Nothing
If IsArray(arrGetProd) Then
For i = 0 To UBound(arrGetProd,2)
intProdID = arrGetProd(0,i)
SQL = " SELECT * FROM tblProdukter WHERE Left(ID, 9) = "& intProdID
Set rs2 = Databas.Execute(SQL)
strArtNr = rs2("ArtNr")
intProdID = rs2("ID")
intPris = rs2("Pris")
SQL = " SELECT * FROM tblProduktInfo WHERE ProdID = "& intProdID &" AND SprakID = 1 "
Set rs3= Databas.Execute(SQL)
If rs3.Eof Then
strText = ("Produkten saknar informationstext.")
Else
strText = rs3("Info")
End If
rs3.Close
[b]'LISTAR PRODUKT[/b]
Next
rs2.Close
End If
Känns lite fel att hämta info ur samma tabell 2 ggr...
Att hämta produktinfo kan göras som jag gör nu om det inte går att joina ihop "allt i ett".
Alla svar och förslag uppskattas!
mvh :)