mysql 특정값에 따라 테이블이름 바꾸는건 어떻게 해야 될까요? 정보
mysql 특정값에 따라 테이블이름 바꾸는건 어떻게 해야 될까요?본문
a 테이블의 특정값 기준으로 조인테이블을 구분하려고 합니다.
예를 들어 a 테이블의 code 값이 ddd 면 table2 를
아니면(code 값이 null이면) table3 을 a 테이블과 조인해보려는데 모르겠네요..;
그냥 아래처럼 해봤더니 오류가 뜨네요ㅎㅎ
select
a.no, a.code, b.company, b.subject
from table_name1 as a
CASE WHEN a.code = 'ddd' THEN
LEFT OUTER JOIN table_name2 as b ON a.no=b.no
ELSE
LEFT OUTER JOIN table_name3 as b ON a.no=b.no
END
WHERE a.id='member_id' order by a.w_date desc limit 0, 5
어떻게 해야 되는지 조언부탁드립니다.
예를 들어 a 테이블의 code 값이 ddd 면 table2 를
아니면(code 값이 null이면) table3 을 a 테이블과 조인해보려는데 모르겠네요..;
그냥 아래처럼 해봤더니 오류가 뜨네요ㅎㅎ
select
a.no, a.code, b.company, b.subject
from table_name1 as a
CASE WHEN a.code = 'ddd' THEN
LEFT OUTER JOIN table_name2 as b ON a.no=b.no
ELSE
LEFT OUTER JOIN table_name3 as b ON a.no=b.no
END
WHERE a.id='member_id' order by a.w_date desc limit 0, 5
어떻게 해야 되는지 조언부탁드립니다.
댓글 전체
if문으로 하시는게 ^^; 속편하지 않을까용?
select x from a
if($x = ddd) {
select a.x,a.y,b.z form a.a b.b
} else {
select a.x,a.y,b.z form a.a x.b
}
select x from a
if($x = ddd) {
select a.x,a.y,b.z form a.a b.b
} else {
select a.x,a.y,b.z form a.a x.b
}
아.. 다른 방법으로 해결했습니다~ 좀 무식하게요ㅠ
다음에 또 이런 상황 생기면 엔타입님 말씀대로 해봐야겠네요~
답변 감사드립니다~^^
다음에 또 이런 상황 생기면 엔타입님 말씀대로 해봐야겠네요~
답변 감사드립니다~^^