webForumDet fria alternativet
Logga in / Bli medlem

Testa om datum finns i en databas

Databaser & SQL

1 svar · 206 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Trådstart#1

Hjälp, jag har blivit stirrig ;)

sql2 = "SELECT ID FROM T_bokad_av_användare "
sql2 = sql2 & " WHERE (#" &varStartDateAndTime &"# BETWEEN bokad_start AND bokad_slut "
sql2 = sql2 & " OR #" &varEndDateAndTime  &"# BETWEEN bokad_start AND bokad_slut "
sql2 = sql2 & " OR (#" &varStartDateAndTime &"# <= (SELECT Min(bokad_start) FROM T_bokad_av_användare) "
sql2 = sql2 & " AND #" &varEndDateAndTime  &"# >= (SELECT Max(bokad_slut) FROM T_bokad_av_användare)) "
sql2 = sql2 & " ) AND product_id = " &sProductId &""

Har en bokningslista som sorteras på datum. Försöker få till en fråga som testar om en ny bokning kolliderar med någon befintlig bokning.

Problemet jag har med nuvarande fråga är att det är tillåtet att boka från 2003-01-01 08:00 till 2003-01-01 17:00 fastän det redan finns en bokning mellan 2003-01-01 10:00 och 2003-01-01 10:30...

Det kanske finns någon bättre lösning?

Medlem sedan maj 20012 080 inlägg
#2

FÖRLÅT... Det verkar inte vara fel på frågan. Hade fel på mina testdatum i databasen. Grr...

Om det finns någon vänlig moderator i närheten får ni gärna ta bort denna tråd. Jag hade inte rättigheter att göra det själv.

255 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)