webForumDet fria alternativet

överlappande datum

Databaser & SQL

2 svar · 373 visningar · startad av daniel_ra

Medlem sedan jan. 2002381 inlägg
Frågan#1

Jag skulle behöva göra följande: Jag har en databas med priser för produkter. För varje pris för en produkt finns ett startdatum och ett slutdatum, det är mellan dessa datum som priset skall gälla. Det råkar dock vara så att vissa priser för en produkt överlappar varandra vilket innebär att det skulle kunna vara två olika priser samma dag för en produkt vilket inte är bra. Jag skulle vilja ha ut en lista på sådana överlappande datum för att kunna ta bort dem. Exempel

FromDate: ToDate: ProductID : Price
2007-01-01 2007-01-31 1 500
2007-01-01 2007-01-31 2 1000
2007-01-31 2007-02-15 1 700

jag skulle alltså i exemplet ovan vilja ha ut rad 1 och 3. Todate för en produkt får inte finnas som FromDate på en annan rad för samma produkt.Kan jag göra en fråga för att få fram alla rader där detta inträffar. Hoppas att ni förstår vad jag menar.

Medlem sedan nov. 20051 317 inlägg
#2
SELECT DISTINCT FromDate FROM minTabell WHERE Produkt = 1

Den SQL-frågan tar fram alla unika FromDate-datum... Det kanske funkar?

Medlem sedan dec. 200012 464 inlägg
#3

Vad har för primärnyckel i tabellen?

261 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)