выбор данных за последний час

Vadimka

Новичок
выбор данных за последний час

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

select ... from table where ... dat between '2005-02-18 22:00:00' AND '2005-02-18 22:59:59'
 

Фанат

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

WebCasper

Guest
Originally posted by Фанат
одним запросом выбрать новость с максимальной датой, а вторым - новости "максимальная дата минус час"
А строки с максимальной датой каким запросом выводится?
 

Фанат

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

WebCasper

Guest
А как организовать эти два запроса? Покажи на примере.

-~{}~ 21.02.05 10:30:

Originally posted by Фанат
строки с максимальной датой выводятся двумя запросами.
первый получает макс дату, а второй выьирает записи с ней
А как организовать эти два запроса? Покажи на примере.
Просто не совсем понимаю, как два запроса сделать сразу.
 

Фанат

oncle terrible
Команда форума
но работаешь ведь?
чем эти запросы отличаются от обычных?
максимальная дата поулчается запросом Select max(date) from table
 

WebCasper

Guest
Originally posted by Фанат
но работаешь ведь?
чем эти запросы отличаются от обычных?
максимальная дата поулчается запросом Select max(date) from table
$db_connection = mysql_connect (localhost, login, pass);
mysql_select_db (base);
$query = "SELECT max(p_date) from posts";
$query_result = mysql_query ($query);

while ($row=mysql_fetch_array($query_result)) {
echo $row['p_date'];
echo "<br><br>";
}

mysql_close;

Я делаю вот так. Он находит только максимальную дату. Теперь мне нужно найти все строки, где p_date=MAX(p_date). Но куда нужно вставить второй запрос?
Пробовал еще вот так: "SELECT * from posts WHERE p_date=MAX(p_date). Не получается. :-(
 

WebCasper

Guest
Originally posted by Фанат
сразу под твоим кодом.
Проблема в том, что я не пойму как он будет выглядеть. Нужно результат работы первого запроса вставлять в отдельную переменную или как?
 

Фанат

oncle terrible
Команда форума
у тебя этот результат уже вставлен в переменную.
теперь её надо только подставить в следующий запрос
 

WebCasper

Guest
if ($urls[1] == "") {
$db_connection = mysql_connect (localhost, medblog, 18081987);
mysql_select_db (medblog);
$query = "SELECT * from posts";
$query_result = mysql_query ($query);

$query = "SELECT * from posts WHERE p_date=$query_result";
$query_result = mysql_query ($query);

while ($row=mysql_fetch_array($query_result)) {
echo $row['p_text'];
echo "<br>";
echo $row['p_date'];
echo "<br><br>";
}

mysql_close;
}

Выдает ошибку.
 

Фанат

oncle terrible
Команда форума
Выдает ошибку.
И зачем ты мне об этом сообщаешь?

-~{}~ 21.02.05 12:27:

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

WebCasper

Guest
Originally posted by Фанат
И зачем ты мне об этом сообщаешь?

по-твоему, я должен отгадать - какая именно ошибка, и где?
я здесь сижу, по-твоему, как гадалка?
мне больше делать нечего?
А взглянув на код из нескольких строчек, нельзя понять где ошибка? (как я понимаю, у тебя имеется опыт)

Выдает ошибку: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource. (в строчке, где начинается конструкция while). Стоит денвер, поэтому ошибку выдает кратко.

я здесь сижу, по-твоему, как гадалка?
Я думаю, если бы знал ошибку, я не писал бы.
 

Фанат

oncle terrible
Команда форума
А взглянув на код из нескольких строчек, нельзя понять где ошибка
А ты считаешь что можно?
А я считаю, что далеко не всегда.
почему тебе не жалко моего времени?
Почему я должен искать у тебя в коде ошибку, ПРИ ТОМ, что тебе ничего не стоит её указать?
Это, между прочим, тебе нужно. Почему из тебя подробности надо клещами вытаскивать?
Стоит денвер, поэтому ошибку выдает кратко.
не понял.
а чем ошибки денвера отличаются от всех других?

Короче.
Первым делом идешь и изучаешь фундаментальный труд PHP FAQ: Ничего не работает! Что делать???
Затем отвечаешь мне на вопрос:
ЧТО ты подставил в свой второй запрос?
как оно должно выглядеть?
А как выглядит на самом деле?

-~{}~ 21.02.05 12:53:

Я думаю, если бы знал ошибку, я не писал бы.
кстати, ссылка, которую я тебе дал, имеет прямое отношение к уот этой твоей фразе.
ошибку ЗНАТЬ не обязательно.
Ошибку надо найти.
причем сделать ты это можешь вполне самостоятельно.
при желании.
 

WebCasper

Guest
Я же написал, какая ошибка:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\bla.ru\www\index.php on line 19

>ЧТО ты подставил в свой второй запрос?

Я подставляю результат первого запроса, то есть максимальную дату. Вторым запросом я ищу строки с такой датой. Но ошибка. Ошибку я написал.
 

Фанат

oncle terrible
Команда форума
Я же написал, какая ошибка:
правильно.
после того, как я заставил тебя это сделать.
Я подставляю результат первого запроса, то есть максимальную да
што ты говоришь?
вот мне интересно, каким местом надо думать, если на экран ты выводишь именно дату, а именно $row['p_date'];
а в запрос подставляешь какую-то фигню!
Ну ладно - не сообразил.
Но тебе же русским языком написано - ВЫЫЕДИТЕ СВОЙ ЗАПРОС, ЧТОБЫ ПОСМОТРЕТЬ ГЛАЗАМИ, что ваши шаловливые ручки наваяли!
 
Сверху