powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Присваивание значения переменным в запросе
6 сообщений из 6, страница 1 из 1
Присваивание значения переменным в запросе
    #38459097
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер.
Имеются 2 запроса
Код: sql
1.
2.
3.
4.
5.
6.
SELECT @id1:=tbl1.id,@id2:=tbl2.id
FROM tbl1
LEFT JOIN tbl2 ON tbl2.tid=tbl1.id
ORDER BY RAND()
LIMIT 1;
SELECT @id1,@id2;


В переменных остаётся значение максимальных (последних) id, но нужно получить id-ы случайно выбранной строки. Что я делаю не так?
...
Рейтинг: 0 / 0
Присваивание значения переменным в запросе
    #38459100
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем тут переменные?
Что мешает сразу сделать:
Код: sql
1.
2.
3.
4.
5.
SELECT tbl1.id,tbl2.id
FROM tbl1
LEFT JOIN tbl2 ON tbl2.tid=tbl1.id
ORDER BY RAND()
LIMIT 1;
...
Рейтинг: 0 / 0
Присваивание значения переменным в запросе
    #38459101
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

У этой задачи долгая предыстория... По этим переменным нужно проверить наличие сток в третьей таблице.
Предыдущий вариант рассмотрен в теме , но мне так и не удалось добиться нужного результата
...
Рейтинг: 0 / 0
Присваивание значения переменным в запросе
    #38459105
yaufol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Прошу прощения, сослался на тему, а потом понял, что формулировка задачи изменилась. В общем, нужно выбрать случайную строку из запроса, в котором соединены 2 таблицы, при чём чтобы эта строка раньше не была выбрана (это контролируется третьей таблицей записью двух id)
...
Рейтинг: 0 / 0
Присваивание значения переменным в запросе
    #38459766
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
select ...
from (запрос, в котором соединены 2 таблицы) AB
left join (третья таблица записью двух id) NAB 
 on AB.idA=NAB.idA and AB.idB=NAB.idB
where NAB.idA is null
order by ... limit 1
...
Рейтинг: 0 / 0
Присваивание значения переменным в запросе
    #38459830
Cygapb-007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yaufolЧто я делаю не так?
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT tbl1.id,tbl2.id
INTO @id1,@id2
FROM tbl1
LEFT JOIN tbl2 ON tbl2.tid=tbl1.id
ORDER BY RAND()
LIMIT 1;
SELECT @id1,@id2;
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Присваивание значения переменным в запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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