У меня есть таблица, состоящая только из двух столбцов: id1 и id2.Следующий запрос в MySQL работает просто отлично:
(select id1 as id, count(id1) as cnt
from my_table
group by id1)
union all
(select id2 as id, count(id2) as cnt
from my_table
group by id2)
Если я хочу использовать вышеуказанный запрос в качестве подзапроса, мне нужно присвоить псевдоним каждой производной таблице - приведенный ниже код дает ошибку («каждая производная таблица должна иметь свойсобственный псевдоним "):
select id, cnt from
(select id1 as id, count(id1) as cnt
from my_table
group by id1)
union all
(select id2 as id, count(id2) as cnt
from my_table
group by id2)
Но я не могу найти правильный синтаксис для псевдонима производных таблиц.Я экспериментировал с добавлением и удалением скобок, но пока не повезло.Для приведенного ниже запроса я просто получаю общую синтаксическую ошибку SQL:
select id, cnt from
(select id1 as id, count(id1) as cnt
from my_table
group by id1) as tab1
union all
(select id2 as id, count(id2) as cnt
from my_table
group by id2) as tab2
Позже я захочу сделать что-то большее с этим подзапросом, а не просто выбирать id и cnt, но это упрощенный сценарий для поиска правильного синтаксиса для псевдонимов.подзапросы.