'on clause'에 알 수 없는 열(열 별칭이 오류를 일으키는 것 같습니다.)
MariaDB 10.2.15에서 작동했던 쿼리가 있습니다. MariaDB 10.3.7로 업그레이드한 후 이 쿼리는 더 이상 작동하지 않고 왜 그런지 모르겠습니다.
쿼리는 다음과 같습니다.
WITH
table_1 AS (SELECT id AS 'first_id' FROM some_table),
table_2 AS (select id AS 'second_id' FROM another_table)
SELECT *
FROM table_1
LEFT OUTER JOIN table_2 ON table_1.first_id = table_2.second_id
UNION
SELECT *
FROM table_1
RIGHT OUTER JOIN table_2 ON table_1.first_id = table_2.second_id
이 쿼리를 실행하려고 하면 오류가 발생합니다.Unknown column 'table_2.second_id' in 'on clause'
. 쿼리(합류열에서 별칭 제거)를 이와 같이 수정하면(아래 참조) 모든 것이 정상적으로 작동하기 때문에 이상해집니다.
WITH
table_1 AS (SELECT id FROM some_table),
table_2 AS (select id FROM another_table)
SELECT *
FROM table_1
LEFT OUTER JOIN table_2 ON table_1.id = table_2.id
UNION
SELECT *
FROM table_1
RIGHT OUTER JOIN table_2 ON table_1.id = table_2.id
편집 1: 쿼리를 이것으로 변경하려고 했지만 여전히 작동하지 않습니다.
WITH
table_1 AS (SELECT id AS `first_id` FROM some_table),
table_2 AS (select id AS `second_id` FROM another_table)
SELECT *
FROM table_1
LEFT OUTER JOIN table_2 ON table_1.first_id = table_2.second_id
UNION
SELECT *
FROM table_1
RIGHT OUTER JOIN table_2 ON table_1.first_id = table_2.second_id
편집 2: 꽤 확신합니다.first_id
열이 존재하는 이유는 아래 쿼리를 실행하면 검색된 결과에서 원하는 열을 볼 수 있기 때문입니다.제 앨리어싱된 제 칼럼이 Left OUTER JOIN 과정에서 분실된 것 같습니다.
WITH
table_1 AS (SELECT id AS `first_id` FROM some_table),
table_2 AS (select id AS `second_id` FROM another_table)
SELECT *
FROM table_1
언급URL : https://stackoverflow.com/questions/50766797/unknown-column-in-on-clause-column-alias-is-probably-causing-error
'programing' 카테고리의 다른 글
웹사이트에서 구글 로보토 글꼴을 사용하려면 어떻게 해야 합니까? (0) | 2023.10.06 |
---|---|
gcc warning: 스칼라 이니셜라이저 주위에 대괄호가 있음 (0) | 2023.10.01 |
AngularJS : 필터를 비동기적으로 초기화합니다. (0) | 2023.10.01 |
람다를 사용하여 Excel에서 모든 순열 생성 (0) | 2023.10.01 |
오라클 11g & jdk 1.6과 함께 사용할 jdbc jar 및 db 자체에 연결하는 방법 (0) | 2023.10.01 |