Проблема с выборкой периодов при переходе с одного месяца на другой

Эдди

Новичок
Проблема с выборкой периодов при переходе с одного месяца на другой

Не могу понять. Все, кажется, перепробовал.

В таблице как строки существуют периоды:
periode_from - periode_to
21.02.09 - 28.02.09
28.02.09 - 04.03.09
04.03.09 - 11.03.09
11.03.09 - 18.03.09
18.03.09 - 25.03.09

Следующим запросом выводятся все периоды, кроме периода, где имеет место переход с одного месяца на другой - 28.02.09 - 04.03.09 НЕ ВЫВОДИТСЯ...

Запрос (упрощенный):
SELECT * FROM tb
WHERE UNIX_TIMESTAMP(periode_to)>=(UNIX_TIMESTAMP(periode_from)+(7*86400))

Пробовал и так:
DAY(periode_to)>=(DAY(periode_from)+7)

Ничего не получается. И так всегда при смене месяцев.
 

Фанат

oncle terrible
Команда форума
а еще ведь при смене года будет.
я правильно понимаю, что в базе в таком виде и хранится?
 

Фанат

oncle terrible
Команда форума
в этом случае никаких проблем с переходом периодов нет.
 

Эдди

Новичок
Но ведь они есть. Реально.
Я не просто пишу, чтобы написать.

Сам ничего не понимаю, почему так.

Хорошо. Буду копать дальше.
Но какое из выражений правильнее?
UNIX_TIMESTAMP или DAY?

Или оба нормально?

Хоть этот момент исключу
 

Фанат

oncle terrible
Команда форума
непонятно, зачем здесь вообще day.

и непонятно, при чем здесь периоды.
выборка идет только по однму полю, а не по периоду?

-~{}~ 17.02.09 21:33:

у тебя в запросе только одно сравнение. как в него может что-то не попадать?
 

Эдди

Новичок
Смысл выборки:
Выбираю все периоды некоего тура, когда дата окончания периода больше или равна дате начала тура + 7 дней (длительность тура).

К примеру. Если период 21.02.09 - 27.02.09, то он не войдет в выборку, потому что не 7 дней. А 21.02.09 - 28.02.09 войдет.

И входит, но не входят те периоды, как я уже говорил, при смене месяцев

Я просто не указал здесь в запросе другое условие WHERE tour_id=221 (к примеру)

=====
И еще. Если переод делаю на день больше, то он попадает в выборку. Но это мешает решению других вопросов.
 

Bitterman

Новичок
Эдди
Следующим запросом выводятся все периоды, кроме периода, где имеет место переход с одного месяца на другой - 28.02.09 - 04.03.09 НЕ ВЫВОДИТСЯ...
Дык и не должен. С количеством дней в феврале напряженка )))
 

Эдди

Новичок
Автор оригинала: Bitterman
Эдди

Дык и не должен. С количеством дней в феврале напряженка )))
У меня, кажется, и с другими месяцами такое было.
И будет еще. Все на потом проблему оставлял. А сейчас приперло.
И потом, если был бы високосный, то понимаю.

Но календарь в PHP и Mysql, вроде, правильно сверстан. С учетом всех геморов.
 

Фанат

oncle terrible
Команда форума
я не понял, как ты выбираешь ПЕРИОД, сравнивая только ОДНУ дату
 

Эдди

Новичок
Вот полный запрос.
Можно добавить и дату начала периода periode_from<NOW().
Но речь ведь не об этом.

SELECT
tour_periode_id, DATE_FORMAT(tour_periode_from,"%d-%m-%Y") as tour_periode_from, DATE_FORMAT(tour_periode_to,"%d-%m-%Y") as tour_periode_to, tour_periodes.profit, tour_periodes.commis, tour_periodes.sconto FROM tours, tour_periodes WHERE tours.tour_id=tour_periodes.tour_id AND tours.tour_id="512" AND UNIX_TIMESTAMP(tour_periode_to)>=(UNIX_TIMESTAMP(tour_periode_from)+(6*86400)) ORDER BY tour_periodes.tour_periode_from ASC
 

Фанат

oncle terrible
Команда форума
о господи.
давай алиасам не совпадающие имена

-~{}~ 17.02.09 22:16:

я сократил, я упростил...
вы ту ттакие тупенькие, что мои сложные не поймете, я вам попроще напишу
 

Фанат

oncle terrible
Команда форума
ну да.
найдите мне в коде ошибку, только я вам его не покажу

-~{}~ 17.02.09 22:19:

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

Эдди

Новичок
Я готов сознаться даже в покушении на убийство президента.
Лишь бы решить проблему...
 

Фанат

oncle terrible
Команда форума
а вот сделать, что сказали, ты не готов.
и подобная тупость меня, мягко говоря, удивляет
 

Фанат

oncle terrible
Команда форума
Эдичек.
Я проявляю в твоем отношении невиданное терпение. Невиданное потому, что ненавижу тупость. Которую ты тут демонстрируешь с редким постоянством.

Я тебе, кажется, уже сообщил, что все отходы твоей мозговой деятельности надо спустить в унитаз. Всё что ты там напридумывал по поводу того, как надо писать вопрос, и что делать, когда тебе ответили. Если думаешь неправильно - значит, думать не надо вовсе.
Что еще неясно-то?
 

Эдди

Новичок
Автор оригинала: *****
Эдичек.
Всё что ты там напридумывал по поводу того, как надо писать вопрос, и что делать, когда тебе ответили. Если думаешь неправильно - значит, думать не надо вовсе.
Что еще неясно-то?
Спасибо. Про вопросы понял.
В чем проблема скажешь?
 

Фанат

oncle terrible
Команда форума
а про ответы понять ума уже не хватило? весь кончился?
 
Сверху