Ошибка левой таблицы соединения: отсутствуют псевдонимы

Я написал запрос в mysql, чтобы получить все записи из таблицы job_input и соответствующие выходные записи, если они доступны из таблицы job_output. Это дает следующую ошибку:

Запрос: выберите ji.* из job_input в качестве левого соединения ji (выберите SUM(jo.O_Total) AS Total_Output, SUM(jo.O_XS) AS XS_Output, SUM(jo.O_S) AS...

Код ошибки: 1248 Каждая производная таблица должна иметь собственный псевдоним.

Ниже мой запрос. Что я делаю неправильно??

SELECT ji.* 
    FROM `job_input` AS ji LEFT JOIN
    (SELECT 
    SUM(jo.O_Total) AS Total_Output,
    SUM(jo.O_XS) AS XS_Output,
    SUM(jo.O_S) AS S_Output,
    SUM(jo.O_M) AS M_Output,
    SUM(jo.O_L) AS L_Output,
    SUM(jo.O_XL) AS XL_Output,
    SUM(jo.O_XXL) AS XS_Output,
    SUM(jo.O_Other) AS Other_Output FROM `job_output` AS jo GROUP BY jo.`Job_InputID`)
    ON jo.`Job_InputID`= ji.`Job_InputID`

person Asma Zinneera Jabir    schedule 20.11.2015    source источник


Ответы (1)


Вам нужно поставить псевдоним для присоединения к таблице?

SELECT ji.* 
    FROM `job_input` AS ji LEFT JOIN
    (SELECT 
    jo.`Job_InputID` AS JobID
    SUM(jo.O_Total) AS Total_Output,
    SUM(jo.O_XS) AS XS_Output,
    SUM(jo.O_S) AS S_Output,
    SUM(jo.O_M) AS M_Output,
    SUM(jo.O_L) AS L_Output,
    SUM(jo.O_XL) AS XL_Output,
    SUM(jo.O_XXL) AS XS_Output,
    SUM(jo.O_Other) AS Other_Output FROM `job_output` AS jo GROUP BY jo.`Job_InputID`) AS table2
    ON table2.JobID = ji.`Job_InputID`
person Ildelian    schedule 20.11.2015
comment
Это исправило ошибку, но не показывает результаты из таблицы job_output. Отображаются только все записи из таблицы job_input. - person Asma Zinneera Jabir; 20.11.2015
comment
@azj Вы выбираете только из джи - person Strawberry; 20.11.2015