powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сложный запрос.
7 сообщений из 7, страница 1 из 1
Сложный запрос.
    #38431893
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер! Нужно сделать сложную выборку следующей логики:
С помощью запроса
Код: sql
1.
SET @m=( SELECT tableM.id FROM tableM ORDER BY RAND() LIMIT 1);


получаем некий айдишник.
Далее соединяем таблицы С, А, и М следующим образом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT tableA.id AS Aid, tableC.Tid, @m
FROM tableC
LEFT JOIN tableC ON tableC.id=tableC.Tid
LEFT JOIN tableA ON tableA.id=tableC.Aid
LEFT JOIN tableM ON tableM.id=@m
WHERE tableC.Mid= @m
LIMIT 2


Таким образом получаем две строки с нужными айдишниками. Но! Нужно переделать запрос так, чтобы в выборку не попали пары айди, которые есть в таблице R. Уже неделю голову ломаю над этой задачей, подкиньте свежую мысль, пожалуйста.
...
Рейтинг: 0 / 0
Сложный запрос.
    #38431951
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбросите свои запросы. После чего сформулируйте вменяемо задачу, не используя SQL. Именно задачу, а не свои попытки её решать.
...
Рейтинг: 0 / 0
Сложный запрос.
    #38431963
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

Задача: Выбрать два случайных объекта по определённому параметру так, чтобы это были объекты, над которыми ещё не производилось никаких операций + собрать дополнительную информацию по объектам.
...
Рейтинг: 0 / 0
Сложный запрос.
    #38431966
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отлично.
В какой из таблиц - объекты?
Что есть определённый параметр? Каким должно быть его значение?
Как фиксируется, что операции производились либо не производились?
Какая доп. инфа нужна и откуда?
...
Рейтинг: 0 / 0
Сложный запрос.
    #38431979
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

Объекты — tableT
Параметры — tableM (динамичный список возможных параметров со строковым значением)
Фиксация производится в tableR, важно отметить, что необходимо сохранить связь между выбранными объектами и значение параметра, так и получилась структура с 2 id объектов и с id параметра.
Дополнительная информация забирается из tableA (данные нужны для вывода, например, фото объекта)
tableC служит таблицей связи NxM, а именно объекты x параметры
...
Рейтинг: 0 / 0
Сложный запрос.
    #38431992
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yaufolФиксация производится в tableR, важно отметить, что необходимо сохранить связь между выбранными объектами и значение параметра, так и получилась структура с 2 id объектов и с id параметра.Этой фразы не понял.
Может, уменьшите формализацию предметной области?
...
Рейтинг: 0 / 0
Сложный запрос.
    #38432026
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Суть заключается в том, что нужно сохранить результат сравнения (строка в таблице R является отчётом) двух объектов по заданному параметру. Как это можно представить в БД иначе?
Единственное упрощение, которое я вижу — это объединить таблицы A и T, но это, по сути, проблемы не решит, просто уменьшит строку запроса. Вариантов другой компоновки таблиц T и M я не вижу, в обеих таблицах большое количество данных.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сложный запрос.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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