в мускуле пишем Код (Text): order by rand() limit 1 а как в postgresql??? у меня одна мысль - написать функцию
Вльдемар Если нужна одна запись - пользоваться таким методом крайне не рекомендуется! Нужно выбирать количество записей, генерировать случайный номер и выбирать запись с этим номером через LIMIT. Такие два запроса будут работать гораздо быстрее, чем один с RAND(). [offtopic] Жаль, что разработчики MySQL до этого не дотумкали :/ [/offtopic]
armadillo Я говорю о случае LIMIT 1. Уж на него-то можно было простейшую оптимизацию добавить и не лопатить весь набор данных в таблице.
В мускуле в случае выборки одной записи проще делать 2 запроса, один COUNT второй PHP: <?php $sql = "SELECT .......... WHERE id <=" . rand(1, $records_count) . " LIMIT 1"; ?> В постгресе не помню, но что-то мне подсказывает что надо покурить сначала ман, а потом для уверенности протестировать. (просто на всякий случай чтоб как в мускуле не получилось, сначала ман покуришь а потом тормоза будут)