webForumDet fria alternativet

Sammanslagning med klass som har arv. Ta med endast superklassens data i resultatet??

Databaser & SQL

0 svar · 607 visningar · startad av jennyf

Medlem sedan dec. 20111 inlägg
Frågan#1

Hej

Jag har stora problem med att ta fram en SQL-fråga som ska ta fram butiker som lagerför pasta som har ett generellt pris under 10 kr/kilot.

Det som jag fastnar på är det faktum att priset ska vara generellt. Alltså att det inte får vara ett pris som är kopplat till en specifik butik.
Klassen "Butikspris" är en subklass av klassen "Pris". Klassen "Pris" har kolumnerna "PrisID" samt "Pris" (i kronor). Klassen "Butikspris" har kolumnerna "PrisID" samt "ButiksNr".

Frågan är alltså hur jag skriver ett villkor så att endast priser som inte finns med i klassen "Butikspris" tas med i urvalet.

SQLfrågan ser ut på detta sätt just nu, när jag inte har något villkor angående generellt pris:

[
SELECT Butik.Butiksnamn
FROM Produktklass, Vara, Produktforpackning, Lagerrad, Butik, Produktrad, Pris

WHERE Produktklass.Produktnamn = 'Spagetti'
AND (([Pris].[Pris]/[forpackningsstorlek]/Pris.Antal)<10)
AND Lagerrad.Antal > 0
AND Produktklass.ID = Vara.ID
AND Vara.ID = Produktforpackning.VaruID
AND Produktforpackning.EANkod =Lagerrad.EANkod
AND Lagerrad.ButiksNr = Butik.ButiksNr
AND Produktforpackning.EANkod = Produktrad.EANkod
AND Produktrad.PrisID = Pris.PrisID
AND Pris.StartDatum < Date() AND Pris.SlutDatum > Date()
]

Tacksam för hjälp

//Jenny

259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)