powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выборка случайных вопросов из таблицы
4 сообщений из 4, страница 1 из 1
Выборка случайных вопросов из таблицы
    #39086841
DON_DON
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Подскажите, пожалуйста, как переделать запрос.
На данный момент выборка случайных вопросов для теста происходит так (количество вопросов в тесте знали точно при выборке Темы, Уровня экзамена)
Таблицы:
1.Сборник вопросов:
idСборник
НомерСборника
idтема
idВидэкзамена
idСварки
Количество(раньше поле было, когда не было разграничение по РД)

2.Вопросы
idВопрос
Вопрос
НомерправильныйОтвет
НомерВопроса
idправОтвет
id_RD

3.РД
id_РД
Название количество
id_Сборник

Запрос без поле РД:
strs = " SELECT TOP 20
& " Вопросы.IdВопрос, Вопросы.НомерВопроса, Вопросы.Вопрос, Вопросы.IdПравОтвет, Вопросы.НомерПравильныйОтвет, Вопросы.idСборник, " & Id & " as idСтудент" _
& " FROM Вопросы" _
& " WHERE (((Вопросы.idСборник) in (SELECT СборникВопросов.IdСборник" _
& " FROM СборникВопросов" _
& " WHERE (((СборникВопросов.idТема)=" & Forms!Задание!ВыбратьТему & ") " _
& " AND ((СборникВопросов.id_Видэкзамена)=" & Forms!Задание!ВыбратьУровень & "))))) " _
& " ORDER BY rnd(INT(NOW*Вопросы.IdВопрос)-NOW*Вопросы.IdВопрос)"

Сейчас в каждом сборнике вопросов есть еще определенное количество РД и в каждом РД есть количество вопросов, которые нужно выбрать случайным образом из вопросов.

Сделала запрос, который выводит все вопросы по всем РД из сборника, а как сделать выборку вопросов по определенному количеству для каждого РД не знаю(
SELECT Вопросы.IdВопрос, Вопросы.НомерВопроса, Вопросы.Вопрос, Вопросы.IdПравОтвет, Вопросы.НомерПравильныйОтвет, Вопросы.id_RD
FROM Вопросы
WHERE (((Вопросы.id_RD) In (SELECT РД.Id_RD
FROM РД
WHERE (РД.id_Сборник) In (SELECT CборникВопросов.IdСборник
FROM СборникВопросов
WHERE СборникВопросов.idТема=35 AND СборникВопросов.id_Видэкзамена=2 AND СборникВопросов.id_Сварки=5))));
Спасибо .
...
Рейтинг: 0 / 0
Выборка случайных вопросов из таблицы
    #39087671
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Балаган какой-то! Что в таблицах, что в запросах. Опиши задачу на словах.
...
Рейтинг: 0 / 0
Выборка случайных вопросов из таблицы
    #39087747
DON_DON
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Rivkin Dmitry,


Есть три таблицы:

1.Сборник вопросов:
idСборник
НомерСборника
idтема
idВидэкзамена
idСварки


2.Вопросы
idВопрос
Вопрос
НомерправильныйОтвет
НомерВопроса
idправОтвет
id_RD

3.РД
id_РД
Название
Количество
id_Сборник

Необходимо вывести запрос, который будет выводить вопросы к тесту(Тест состоит из сборника вопросов(их сейчас 6), каждый сборник состоит из РД)
В таблице РД есть поле Количество, которые показывает сколько из каждого РД надо выбрать вопросов случайным образом.
Например сотрудник заходит на главную форму, выбирает Тему, Вид_экзамена, сварку. По этим данным смотрим какой сборник вопросов будет в тесте, далее этот сборник состоит из трех РД (в первом РД всего 50 вопросов, во 2 и 3 по 60)
В таблице РД есть поле Количество которое показывает сколько вопросов надо вывести случайным образом ( например из 1 РД - 10 вопросов из 50; во 2 и 3 - 5 вопросов из 60)
Всего получается в тесте будет 20 вопросов

Сделала запрос, который выводит все вопросы по всем РД из сборника(170 вопросов, а не 20), а но не делает выборку вопросов(отбор по количеству вопросов в РД случайным образом)

SELECT Вопросы.IdВопрос, Вопросы.НомерВопроса, Вопросы.Вопрос, Вопросы.IdПравОтвет, Вопросы.НомерПравильныйОтвет, Вопросы.id_RD
FROM Вопросы
WHERE (((Вопросы.id_RD) In (SELECT РД.Id_RD
FROM РД
WHERE (РД.id_Сборник) In (SELECT CборникВопросов.IdСборник
FROM СборникВопросов
WHERE СборникВопросов.idТема=35 AND СборникВопросов.id_Видэкзамена=2 AND СборникВопросов.id_Сварки=5))));
Спасибо .
...
Рейтинг: 0 / 0
Выборка случайных вопросов из таблицы
    #39087765
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не надо повторять этот невменяемый поток сознания. И не надо рассказывать, что Вы неправильно сделали - всё равно пока непонятно, зачем это делалось.

Сформулируйте ЗАДАЧУ.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выборка случайных вопросов из таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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