创建视图并查询和select* from (select ...) view_test的区别
其实视图的本质就是创建了一个临时的内部select,即是select* from (select ...) view_test的view_test;
它和我们用上述查询方式来查询其实没有本质区别;
但是有一些区别这里零碎整理下:
1.视图虽然是个虚拟表,但是它也有表的一些特质,比如字段不能重复(视图正常不能插入值,原理用上述select * from (select ...) view_test很好理解)
而我们之间用select* from a join b where a.id = b.a_id则是可以展示出多个id列的假设a和b都有id列,但是注意如果让其放到别名里,则不能有field重复,比如:
select * from (select* from a join b where a.id = b.a_id) view_test,这个时候内部的select就不能有重复的字段了;
posted on 2022-10-26 19:30 Silentdoer 阅读(167) 评论(0) 编辑 收藏 举报