Вниз
Скачать: CL | DM;

как с помощью random выбрать запись из таблицы   Найти похожие ветки 

← →
sanek ©   (2004-10-22 07:38) [0]

Уважаемые мастера помогите. Проблема состоит в следующем: Нужно случайным образом выбрать запись из таблицы (допустим по ID) и во избежании повторения ее удалить её.

Необходим сам синтаксис написания в Delphi.
Зарание блогадорю.
С уважением к мастерам ~(SANEK)~.


← →
makz   (2004-10-22 07:50) [1]

Первый нах!
шутка :)
Что за таблица-то? Table или Query или еще чего?


← →
ЮЮ ©   (2004-10-22 08:10) [2]

>Нужно случайным образом выбрать запись из таблицы (допустим по ID) и во избежании повторения ее удалить её.

Удаляй сразу все, метод тыка - ненаучный подход !!!


← →
DenK_vrtz ©   (2004-10-22 08:14) [3]

>sanek ©

такую лабу в прошлом году уже делали :)


← →
Геннадий   (2004-10-22 08:14) [4]

Опиши яснее - что тебе нужно и зачем?


← →
sanek ©   (2004-10-22 10:29) [5]

короче есть таблица dbf из неё нужно выбрать запись причем случайнам образом как это сделать из delphi


← →
Sergey13 ©   (2004-10-22 10:35) [6]

2[5] sanek ©   (22.10.04 10:29)
Смысл задачи какой?

>короче есть таблица dbf из неё нужно выбрать запись причем случайнам образом как это сделать из delphi
Однопользовательский режим? Если да, то можно решить в лоб. Делаем доп. поле. В цикле пишем в него random и сортируем по нему. При выборе записи - обнуляй поле.


← →
DenK_vrtz ©   (2004-10-22 10:43) [7]

еще вариант
1.Скидываем значения id-ов в некий список
2.Генерим случайное число в заданном диапазоне
3.Проверяем входит ли это число в список id, если да то показываем эту запись.

чуть не оптимально, поскольку сгенерированное число может не входит в список id, зато полность по условию задачи


← →
msguns ©   (2004-10-22 10:45) [8]

Я предлагаю метод куда покруче. Значицца так:
Для каждого из полей таблы рисуем генератор случайного значения.
Запускаем все генераторы и получаем N случайных значений для всех N полей записи. После этого делаем Locate по всем полям таблицы (табла, ясный пень, юзается эксклюзивно). Если не найдена, то опять запускаем все генераторы и по новой. Такой метод обеспечит совершенно случайный выбор записи. Если найдена, то удалить к чертовой матери. Причем сразу всю таблицу ! Основание: если таблица содержит такую запись, значит все, что в ней имеется, не имеет смысла !



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
1-1100087739
Leksiy
2004-11-10 14:55
2004.11.21
Перебор каталогов


1-1099500646
SelloutS
2004-11-03 19:50
2004.11.21
Как сгенерировать несколько чисел сумма которых = 1


3-1098273092
Dysan
2004-10-20 15:51
2004.11.21
SQL запрос Group by по полю типа memo


14-1099522689
Сашок
2004-11-04 01:58
2004.11.21
Железо


3-1098863018
Slon22
2004-10-27 11:43
2004.11.21
Поле типа DATE




   Наверх