powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделть вопрос случаной выборки записей из таб. ?
9 сообщений из 9, страница 1 из 1
Как сделть вопрос случаной выборки записей из таб. ?
    #32455099
Stval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно, чтобы каждый раз при выполнении запроса из 4000 записей выбирались 40 новых (хаотично).
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455115
TRoUbLEs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> ... выбирались 40 новых (хаотично)
Нет, такого сделать точно нельзя! ;-)))))))))))))))))
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455127
Julius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если это ADP,то

Код: plaintext
SELECT TOP  40  * FROM Table ORDER BY newid()
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455137
TRoUbLEs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То Julius:
Просто, но это не будет "хаотичный" набор записей. ;-))))))))))
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455143
Julius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что есть хаос?..
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455188
Stval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне надо сделать выборку случайных записей из таблице под Access-ом.
А тот SQL запрос который был предложен, делает выборку первых 40 записей.
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455224
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавь в свой запрос поле, в которое запиши

newsorting: Rnd([любое числовое поле запроса])

и по нему сортируй - каждый раз новая выборка

учти: использование в качестве агрумента константы ничего не даст (значения будут равны)
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32455287
Если быстродействие не важнО, то в mdb наподобие предложенного:

SELECT TOP test.*
FROM test
ORDER BY Rnd(1+Abs([id]));


будет читать _всю_ таблицу, строить Rnd(1+Abs(id)), потом это _все_ сортировать, а потом выбирать из отсортированного.

(2 Алексус12 - просто Rnd(поле) не слишком верно, но можно Rnd(1+([id]-[id])) :)


__
Если записей много, то надо бы как-то попытаться воспользоваться индексом. Надо подумать.
для одной записи это было-бы наподобие
SELECT TOP 1 test.*
FROM test
WHERE id>=MyRndI([id])
ORDER BY id;
вернее надо бы использовать не WHERE а OFFSET (или как его там, в общем такого в диалекте АксSQL нету), а то все равно в MyRndI() придется возвращать инфу о плотности [id] (каковое могабыть не сплошным, иначе можно было б обойтись передачей минимума и максимума) - т.е. читать таблицу. Т.ч. на вскидку не видно, как поюзать индекс в Аксес в вашей задачке, не считав табличку.
...
Рейтинг: 0 / 0
Как сделть вопрос случаной выборки записей из таб. ?
    #32457116
Stval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Благодарю за помощь
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделть вопрос случаной выборки записей из таб. ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]