MySQLでVIEW
MySQLってVIEWでサブクエリが使えないみたいなんですよ
例えば
select * from t1 tmp1,
(
select c3,max(c4) as 'c4' from t2 group by c3 having count(c3) >= 2
) tmp2
where tmp1.c1=tmp2.c3
みたいなSQLがあったとしてこれをVIEWに出来ない
パーサでエラーになっちゃいます
でどうするか
joinでいけるかもですけど
長ったらしくなるかもだったので
select c3,max(c4) as 'c4' from t2 group by c3 having count(c3) >= 2
の部分を
create view v_1 as select c3,max(c4) as 'c4' from t2 group by c3 having count(c3) >= 2
ってしてから
create view v_2 as select * from t1 tmp1,v_1 tmp2 where tmp1.c1=tmp2.c3
ってすると作成が可能なんですよ!!
1000行近いクエリの場合、可読性、メンテナンス性などを考慮しすると
こっちのほうが圧倒的に見やすい!!
もっといろいろ出来そうです