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

AleXanD

Новичок
Вопрос: А что быстрее будет работать: select count(id) ... или show table status like `table1` ?
И еще -
SELECT *
FROM `table`
ORDER BY RAND( )
LIMIT 1

почему-то не работает (выбирает либо 1-ю либо последнюю записи)
 

Фанат

oncle terrible
Команда форума
show table status к обсуждаемому вопросу не имеет никакого отношения.
 

AleXanD

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

$info=mysql_fetch_array(mysql_query("SHOW TABLE STATUS LIKE 'table1' "));
$count=$info[3];
 

Фанат

oncle terrible
Команда форума
ещё в одной ветке спросишь - и больше уже спрашивать будет некому
 

chisto_tolyan

Враг народа
хм, помню в таблице было около 1,500,000 записей, в запроси были и WHERE и GROUP BY, но все равно COUNT(*) работал быстрее чем COUNT(id), id - PRIMARY KEY
 
Сверху