Frågan#1
Hej! alla finurliga människor :)
Jag har en databas med 2 stycken tabeller...en med företag och en med öppettider.
Companies
========
CompanyId, INT
CompanyName, VC
OpeningHours
=========
OHID, INT
StartTime, VC
StopTime, VC
CompanyId, INT
OpenDay, INT
Jag sparar alltså öppettiderna som ex. (startTime)10.00 (StopTime)20.00 och dagarna som INT.
(OpenDay) 1 = mån, 2 = Tis osv.
till detta har jag en lagrad procedur som ser ut såhär:
DECLARE @TimeNow char(10)
SET @TimeNow = RIGHT('0'+CONVERT(VARCHAR,DATEPART(hh,GETDATE())%24),2)+'.'
+RIGHT('0'+CONVERT(VARCHAR,DATEPART(mi,GETDATE())%24),2)
SELECT Company.CompanyId,Company.CompanyName,OpeningHours.StartTime,OpeningHours.StopTime
FROM Companies INNER JOIN OpeningHours ON Company.CompanyId = OpeningHours.CompanyId
WHERE (Opentime.OpenDay = @Day) AND (@TimeNow BETWEEN OpeningHours.StartTime
AND OpeningHours.StopTime)
Detta funkar ju jättefint sålänge företaget bara har en öppettide från och till.
Men när ett företag t.ex. har öppet mellan 10.00-12.00 och 15.00-22.00.
hur ska man göra då för att få ut den "andra" tiden också?