SQLite случайный вложенный запрос иногда не возвращает результат - PullRequest
0 голосов
/ 28 марта 2019

У меня есть две таблицы, a и b, связанные реляционной таблицей «многие ко многим», c.Для нужд моей программы мне нужно 5 уникальных случайных результатов.

Сначала я создаю временную таблицу, случайным образом выбирая одну из строк (varA) из таблицы a.Я создаю другую временную таблицу, случайным образом выбирая из таблицы b одну из строк, связанных с varA таблицей c (var1).Я создаю третью временную таблицу путем случайного выбора другой строки из таблицы b, связанной с varA, но с таблицей c , которая не является var1 (var2).Затем я создаю другую временную таблицу путем случайного выбора строки из таблицы a, которая связана с var1 таблицей c , которая не является varA (varZ).Наконец, я хочу создать другую временную таблицу путем случайного выбора строки из таблицы a, которая связана с var2 таблицей c , которая не является ни varA, ни varZ (varY).

Другими словами,есть пять результатов: три уникальные строки из таблицы a и две уникальные строки из таблицы b.Один результат из b связан с двумя из результатов из a, а другой результат из b связан с двумя из результатов из a, но два результата из b имеют только один результат из a.

Надеюсь, это было следом.

С тем, что у меня есть, иногда он возвращает только один или даже ноль результатов.Как мне всегда гарантировать, что есть точное количество результатов, которые мне нужны?

В качестве альтернативы, если есть более элегантный способ сделать это, я весь в ушах.Или глазами, потому что я буду читать это ...

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