2013-07-20 2 views
0

CTE를 사용하여 쿼리의 두 부분에서 하위 쿼리를 사용하려고합니다. 유감스럽게도 MySQL에는 CTE가 없습니다. 임시 변수를 만들지 않고도이 작업을 수행 할 수 있습니까?MySQL의 하위 쿼리 재사용

단순화 할 특정 쿼리가 없습니다. 나는 일반적인 기술을 알고 싶다. 구체적인 예가 필요한 경우 여기에 CTE가 있습니다.

with subquery as (select * from t) 
select *, (select count(*) from subquery c) from subquery a, subquery b 

무엇이 MySQL에 해당합니까?

+0

단순화 할 실제 쿼리를 표시 할 수 있습니까? –

+0

@ JoachimIsaksson 질문의이 부분에 답하지 않고 사람들이 특정 상황을 단순화 한 다른 질문을 읽었습니다. 나는 일반적인 의미에서 쿼리를 재사용하고 싶다. 감사. –

답변

1

은 내가 아는 한, MySQL은 가장 가까운 상응하는 creating a view입니다 :

create view subquery as select * from t; 

select *, (select count(*) from subquery c) from subquery a, subquery b; 

SQLFiddle here.