webForumDet fria alternativet

Summera antal dubbelbokade utrustningar

2 svar · 430 visningar · startad av Peeer

PeeerMedlem sedan mars 20025 907 inlägg
#1

Hej!
Håller på med ett bokningssystem för utrustning och vill nu göra en kontroll för att minska dubbelbokningar.

Jag har en tabell med noder (uthyrningar) och en tabell med utrustning kopplad till noderna. Noderna har en starttid och en sluttid.

Nodes:
id	starttime		endtime
1	2009-05-03 12:00:00	2009-05-05 12:00:00
2	2009-05-01 12:00:00	2009-05-04 12:00:00
3	2009-05-04 12:00:00	2009-05-04 13:00:00
4	2009-05-05 08:00:00	2009-05-10 13:00:00

Nodeequipment:
node_id		equipment_id	quantity
1		1		1
1		2		1
2		1		3
3		3		3
4		1		4

Som synes kan noderna helt eller delvis överlappa varandra. Det jag vill göra är att med ett givet node_id och equipment_id räkna ut det maximala antalet equipments som är aktiva samtidigt.

Exempel: Skickar jag in node_id = 1 och equipment_id = 1 så vill jag ha svaret 5 (eftersom nod 1 och 4 överlappar varandra och det redan är uppbokat 1 respektive 4 enheter (med id 1) i de noderna).

Skickar jag in node_id = 2 och equipment_id = 1 så vill jag ha svaret 4 (då nod 1 och 2 överlappar varandra).

Någon som förstår vad jag vill göra? Och framförallt, hur får jag fram det jag vill?

Mvh Per

PeeerMedlem sedan mars 20025 907 inlägg
#2

Är det ens möjligt med bara sql? Om det underlättar så kan jag skicka in equipment_id tillsammans med två tidpunkter istället för node_id.

/Per

PeeerMedlem sedan mars 20025 907 inlägg
#3

Ingen?

134 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)