[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подскажите SQL-запрос
freed-master
Есть таблица:
SQL
CREATE TABLE `session` (
`id_session` varchar(32) NOT NULL,
`putdate` datetime NOT NULL default '0000-00-00 00:00:00',
UNIQUE KEY `id_session` (`id_session`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;

Есть запрос:
SQL
SELECT * FROM `session` WHERE putdate < NOW() - INTERVAL '10' MINUTE

Все работает замечательно. А как сделать так чтоб выводились записи не 10-минутной давности, а за прошлый месяц, например. Пробовал делать по анологии:
SQL
SELECT * FROM `session` WHERE putdate < NOW() - INTERVAL '1' MONTH
Но увы... может надо использовать не NOW() или в скобках что-то написать? Подскажите пожалуйста!



Спустя 41 минута, 57 секунд (13.06.2009 - 11:25) twin написал(а):
Ну это же интервал, там же так и написано: INTERVAL. То есть нужно его задать. Если отсчет идет от NOW(), то есть от "сейчас", то и будет интервал "от месяц раньше до сейчас". Нужно задать требуемый.
SQL
SELECT * FROM `session` WHERE putdate < NOW() - INTERVAL '2' MONTH AND putdate > NOW() - INTERVAL '1' MONTH

Как то так... Я сам в них путаюсь biggrin.gif

Спустя 3 часа, 42 минуты, 8 секунд (13.06.2009 - 15:07) freed-master написал(а):
Тоже не то... какие у гого еще варианты будут?

Спустя 8 минут, 54 секунды (13.06.2009 - 15:16) FatCat написал(а):
А зачем вообще дату хранить в таком формате? Нужны даты до 1970-го?
ИМХО, логичней в БД хранить time(), а все вычисления дат для отображения производить средствами пхп...

Спустя 36 минут, 58 секунд (13.06.2009 - 15:53) freed-master написал(а):
Очень извените, запрос верный, проблема была в выводе...


_____________
Всем, кто заинтересован, могу помочь начать зарабатывать на forex.
Пишите в личку или на e-mail: flash-dirt@yandex.ru
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.