MySQL выбирает период времени - PullRequest
0 голосов
/ 14 сентября 2011

У меня есть таблица с именем away со следующими полями

+---------------+-----------------+---------------+
| Name          |  from           |   to          |
+---------------+-----------------+---------------+
| Lee           |  12-09-11       |   16-09-11    |
|               |                 |               |
| Mike          |  10-10-11       |   12-11-11    |
+---------------+-----------------+---------------+

Мне нужен запрос, чтобы проверить, нет ли человека в данный день. Например, Lee будет отсутствовать 14-09-11, поэтому я не хочу возвращать эту строку.

Ответы [ 2 ]

2 голосов
/ 14 сентября 2011
set @away:='2011-09-14';

select name 
from away
where `from`>@away and `to`<@away;
-- to encourage optimization
-- an index should be build on `from` and `to`

другая проблема - избегайте использования зарезервированного ключевого слова в схеме таблицы, оно просто bad

0 голосов
/ 14 сентября 2011
SELECT * FROM away WHERE '14-09-11' NOT BETWEEN from AND to
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...