Здравствуйте, у меня возникла проблема с правильной выборкой требуемых строк из таблицы MySQL в интервале дат.Оператор MySQL для извлечения строк между временными отметками unix
Моя таблица была такой структуры первоначально (да с unixtimestamps не MySQL даты):
id name departures depmin depmax
-------------------------------------------------------------------------
1 a 1327608000 1327608000 1327608000
2 b 1321646400,1322856000, 1321646400 1337976000
1325880000,1327694400,
1329508800,1330718400,
1331928000,1332532800,
1333137600,1333742400,
1334347200,1334952000,
1336161600,1336766400,
1337371200,1337976000
3 c 1315166400,1316894400, 1315166400 1327780800
1317758400,1318968000,
1319918400,1320004800,
1320091200,1320177600,
1321387200,1324152000,
1325448000,1325534400,
1325620800,1327780800
------------------------------------------------------------------------
Моя задача состоит в том, чтобы получить все 3 ряда с уходом между 1327536001 и 1327881601, но если я запрашиваю так:
SELECT * FROM exampletable WHERE depmin >= 1327536001 AND depmax <= 1327881601
Я получаю только первую строку (с идентификатором 1 и именем a). Так что я совершенно смущен, как получить все три строки между этим примерным интервалом?
Просьба сообщить, как построить мой запрос или как переформатировать таблицу.
Ну, две другие строки не совсем в этом интервале - в лучшем случае они перекрываются. –
Они есть. Посмотрите колонку «отъезд». – moogeek