Dev/DataBase
[MariaDB] MariaDB/MySQL 오류 UNION ALL 오류
nakanara
2020. 10. 20. 15:44
반응형
mariadb 가상 테이블을 사용하여 만든 결과 값을 UNION 할 경우 프로세스가 종료되는 등, Docker로 설치된 mariadb는 정상인데, Install 로 설치한 mariadb는 발생하였다.(나의 생각)
찾아보단 중 가상테이블의 결과를 UNION 하는 순간 오류가 발생한 이슈가 있어서 찾긴 했는데 해결 방안이 없어서 고민하던 도중, 가상테이블을 다시 한번 감싸서 사용했더니 발생하지 않았다.
- with recursive and union all 오류 https://jira.mariadb.org/browse/MDEV-23619
MariaDB 10.3 버전 사용 중
select @@version;
create table foo (
a bigint(10) not null auto_increment,
b int(5) not null,
c bigint(10) default null,
primary key (`a`)
);
insert into foo values (1,1,12);
- RECURSIVE 사용한 테이블을 UNION ALL 사용한 경우 오류 발생, 접속 종료 등의 오류 생성
With recursive tree as (
select a, b, c from foo
union all
select A.a, A.b, A.c from foo A inner join tree as B on A.c = B.a
)
select 0 as b from daul
union all
select b from tree;
- 처리 방안
UNION ALL을 가상테이블화 한 결과를 select 처리
With recursive tree as (
select a, b, c from foo
union all
select A.a, A.b, A.c from foo A inner join tree as B on A.c = B.a)
), tree_table as (
select 0 as b from daul
union all
select b from tree
)
select * from tree_table;
반응형