# SQL Zeitspanne abfragen (zwischen start - end)



## mkoeni1 (12. Dezember 2007)

Hallo Leute,

ich benötige Eure Hilfe bei der Abfrage einer MySQL Version: 5.0.45 Tabelle. Ich habe folgendes Problem mit einer Abfrage. Die Tabelle sieht so aus:

```
CREATE TABLE IF NOT EXISTS `events` (
  `id` int(3) NOT NULL auto_increment,
  `eventTitle` varchar(255) NOT NULL,
  `eventDate` date NOT NULL,
  `eventStartTime` time NOT NULL,
  `eventEndTime` time NOT NULL,
  `eventDesc` varchar(255) NOT NULL,
  `kommentar` varchar(255) NOT NULL COMMENT 'Ein Kommentar zu einer Buchung',
  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT 'eindeutiger Stamp',
  `user_id` int(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COMMENT='Buchungen, Kommentare, ...' AUTO_INCREMENT=17 ;

-- 
-- Daten für Tabelle `events`
-- 

INSERT INTO `events` (`id`, `eventTitle`, `eventDate`, `eventStartTime`, `eventEndTime`, `eventDesc`, `kommentar`, `timestamp`, `user_id`) VALUES 
(1, 'test', '2007-12-12', '13:45:30', '13:55:30', 'test', 'Super Sache. Weiter so.', '2007-12-12 13:42:55', 6);
```

In dieser Tabelle können sich Benutzer einen Zeitraum von 10 Minuten buchen für eine Tätigkeit. Wenn sich jetzt unmittelbar (bspw. 13:48:54) ein anderer Benutzer anmeldet und eine Sitzung reserviert will muss ich sichergehen das der Termin frei ist. 

Mit welcher SQL Abfrage kann ich die Tabelle abfragen um zu schauen ob kein Termin (von - bis) aktuell vorliegt?

Kann mir jemand helfen?
Vielen Dank und Gruß
Matze


----------



## Admi (12. Dezember 2007)

SELECT * FROM `timestamp` WHERE [aktuellerStamp] BETWEEN [Anfangszeit] AND [Endzeit]


----------



## mkoeni1 (12. Dezember 2007)

Hi,

die Tabelle heißt events ;-)
Das heißt aber auch, dass es nötig ist die  [Anfangszeit] und die [Endzeit] auch in das UNIX Format zu bringen, oder ?
Wie kann ich das mit SQL erreichen? Wenn überhaupt.

Gruß Matze


----------

