Поиск обходного пути для ограничения mysql для ссылки на запрос верхнего уровня по 2 уровням - PullRequest
0 голосов
/ 04 ноября 2018

Для следующего предполагаемого запроса mysql / mariadb:

SELECT * FROM aktfv f
LEFT JOIN
(SELECT * FROM (
       SELECT * FROM labor1a WHERE pat_id = f.pat_id
 UNION SELECT * FROM labor2a WHERE pat_id = f.pat_id) i
) i ON i.pat_id = f.pat_id;

Я получаю сообщение об ошибке 1054: неизвестный столбец 'f.pat_id' в 'предложении where',
по-видимому, из-за ограничения ссылаться на параметр внешней таблицы только на 1 уровне.
Я хотел применить предложение 'where', потому что в противном случае выбор 'union' занимает очень много времени.
Кто-нибудь может дать мне подсказку для обхода?

1 Ответ

0 голосов
/ 04 ноября 2018
SELECT  f.* ,l.* FROM aktfv f join labor1a l on  l.pat_id = f.pat_id
 UNION 
SELECT  f.* ,l.* FROM aktfv f join labor2a l on l.pat_id = f.pat_id

Или я что-то упустил?

...