Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| |
Точно, млин! Теперь въехал. Вот это я тупанул... ))) 10.08.10 20:55 Число просмотров: 2726
Автор: Fighter <Vladimir> Статус: Elderman Отредактировано 10.08.10 20:58 Количество правок: 2
|
Не обратил внимание на '(SELECT * FROM tTable LIMIT '
Спасибо!
|
<web building>
|
Вопрос по PHP+SQL 09.08.10 14:09 [Fighter]
Автор: Fighter <Vladimir> Статус: Elderman Отредактировано 09.08.10 14:10 Количество правок: 1
|
Наткнулся на хабре на пост "Выборка произвольных записей в MySQL" - http://habrahabr.ru/blogs/mysql/54176/ . Там приведен пример вот такого кода:
$row_count = mysql_result(mysql_query('SELECT COUNT(*) FROM tTable;'), 0);
$query = array();
while (count($query) < 10) {
$query[] = '(SELECT * FROM tTable LIMIT '.rand(, $row_count).', 1)';
}
$query = implode(' UNION ', $query);
$res = mysql_query($query);
---
Никак не могу въехать, для чего нужны последние две строки, ведь 10 случайных записей уже выбрано. Нафига склеивать записи м/у собой строкой ' UNION ', а потом посылать результат как запрос в СУБД. Объясните, плз, а то на жаре мозги уже закипают )
|
|
Вот это: 10.08.10 15:52
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
Вот это:
> while (count($query) < 10) { > $query[] = '(SELECT * FROM tTable LIMIT '.rand(, > $row_count).', 1)'; > } > $query = implode(' UNION ', $query);
просто составляет длинный запрос.
А вот это:
> $res = mysql_query($query);
его отправляет в sql за данными
> Никак не могу въехать, для чего нужны последние две строки, > ведь 10 случайных записей уже выбрано.
ничего не выбрано до строчки c mysql_query($query);
|
| |
Точно, млин! Теперь въехал. Вот это я тупанул... ))) 10.08.10 20:55
Автор: Fighter <Vladimir> Статус: Elderman Отредактировано 10.08.10 20:58 Количество правок: 2
|
Не обратил внимание на '(SELECT * FROM tTable LIMIT '
Спасибо!
|
|
|