我一直希望并假设它不是 - 集合论(或其他东西)提供了结果的捷径。
我创建了一个不可更新的视图,它以一种产生指数记录数的方式聚合来自多个表的数据。从这个视图,我一次查询一条记录。因为底层数据集很小,所以这种技术效果很好 - 但我担心它不会扩展。
我听说MySQL使用临时表来实现视图。我想到每一个查询都会出现潜在的大量临时表,并且存在不存在。
答案 0 :(得分:1)
使用explain <select query>
语法查看查询中实际发生的情况。
一般来说,使用视图等同于使用具有相同SQL的子查询。没有更好,也没有更糟,只是一种阻止一遍又一遍地写同一子查询的捷径。
有时候你最终会得到用于解决某些comples查询的临时表,但是如果DB结构得到很好的优化并且使用视图而不是子查询不会改变任何东西,它就不应该经常发生