Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
ВнизRandomaize Найти похожие ветки
← →
mikola (2004-07-07 13:50) [0]Здравствуйте.
Подскажите пожайлуста как можно сделать так чтобы записи которые есть в базе показывались произвольным образом(тоесть типа Randomaze) и если например показалось 30 записей то показать сообщение.
Заранее спасибо.
← →
Курдль © (2004-07-07 13:58) [1]У записей ID есть?
Да и вообще, самому лень, что ли, подумать? :(
← →
Anatoly Podgoretsky © (2004-07-07 14:01) [2]Написать наследника от TDataset
← →
miwa © (2004-07-07 15:27) [3]Хм... Дайте подумаю... А разве записи из базы при использовании select"а как-то отсортированы? Что мешает просто показывать их в порядке получения?
← →
Sandman25 © (2004-07-07 15:28) [4][3] miwa © (07.07.04 15:27)
Бывает, что отсортированы. Бывает, что если 5 раз пишем один и тот же select, то 5 раз получаем данные в одном и том же порядке.
← →
Sir John © (2004-07-07 17:56) [5]для MySQL сие выглядит вот так:
SELECT * FROM table1,table2 WHERE a=b AND c<d ORDER BY RAND() LIMIT 1000
MySQL Reference Manual (C) 2002 MySQL AB
← →
mikola (2004-07-08 08:19) [6]А можно как нибудь подсчитать количество записей в таблице, и потом просто делать переход по ним произвольным образом подставльть номер записи на которую нужно перейтий.
Блин есё надо чтобы показываемые записи неповторялись.
← →
Ratiborr © (2004-07-08 10:47) [7]Можно создать новый набор данных:ид_записей, №записи_в_НД(тот же SELECT ;)). теперь можно использовать randomize(). получив №, можно перейти к самому идешнику. и сЁ. а чтобы не повторялись элементы, написать обработочку, когда random"ом пользуешься.
← →
Ratiborr © (2004-07-08 11:06) [8]Пришел как-то однажды Locate к Randomiz"у.......:)
← →
mikola (2004-07-08 12:45) [9]>>>>>>>>Ratiborr
А ты немогбы по подробнее рассказать о
>> чтобы не повторялись элементы, написать обработочку, когда random"ом пользуешься.
← →
Ratiborr © (2004-07-08 12:58) [10]На сколько я понял, кол-во записей конечно. т.е. рано или поздно процесс выборки без повторений закончится. так? если так, то можно сделать след. в цикле: выдергиваешь рандомайзем записи, параллельно с этим ведешь список уже выдернутых записей. так вот, выдернул - проверил на вхождение в список уже выдернутых(не входит - попрет и сразу же обновляешь список выдернутых, входит - цикл дальше гоняешь). возможно есть способ рациональней. но это первое, что мне пришло в голову.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.038 c