---
title: "Sammanslagning med klass som har arv. Ta med endast superklassens data i resultatet??"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/188584-sammanslagning-med-klass-som-har-arv-ta-med-endast-superklassens-data-i-resultatet"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "jennyf"
published: "2011-12-13T17:49:56.000Z"
updated: "2011-12-13T17:49:56.000Z"
replies: 0
views: 619
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/188584-sammanslagning-med-klass-som-har-arv-ta-med-endast-superklassens-data-i-resultatet"
---

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

## #1 — jennyf, 2011-12-13T17:49Z

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

Permalänk: https://www.webforum.nu/p/188584

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/188584-sammanslagning-med-klass-som-har-arv-ta-med-endast-superklassens-data-i-resultatet
