我目前正在學習postgresql。但是,我對錶格,視圖和物化視圖有點困惑。我理解基本定義和概念。但有時候,我很難做出決定,我應該創建一個表格,視圖或物化視圖。誰會分享一些經驗,如何正確應用它?對其他人的利弊有哪些?謝謝表vs視圖vs物化視圖
2
A
回答
5
表是數據存儲的地方。你總是先從表開始,然後你的使用模式決定你是否需要視圖或物化視圖。
如果您經常以相同的方式在多個位置加入或過濾相同的表,則視圖就像存儲的查詢以備將來使用。
物化視圖就像兩者的組合:它是一個通過視圖自動填充和刷新的表。如果您正在使用視圖,並且希望預加入或預先彙總行以加快查詢速度,則可以使用此功能。
2
This article對此部分有很好的解釋。引用它,
當您查詢一個表,您直接獲取其數據。另一方面,當您查詢VIEW時,基本上查詢存儲在VIEW定義中的另一個查詢 。
...
兩個有物化視圖之間的 - 這是在其定義中 查詢並使用該查詢到的數據直接從存儲讀取 一個視圖,但它也有它自己的存儲,基本上將 作爲底層TABLE與在MATERIALIZED VIEW上操作的查詢 之間的緩存。它可以刷新,就像 無效緩存 - 一個進程會導致其定義的查詢 再次被實際數據執行。
相關問題
- 1. SQL Server 2005視圖vs物化視圖vs存儲過程
- 2. Oracle實體化視圖VS物理表
- 3. scala.collection.breakOut VS視圖
- 4. 查詢性能物化視圖VS主表
- 5. 索引視圖VS表
- 6. SQL視圖vs派生表
- 7. 子視圖VS childViewController
- 8. UIcollectionview裝飾視圖VS補充視圖
- 9. 卡桑德拉seconday索引vs物化視圖
- 10. MySQL:物化視圖?
- 11. PostgreSQL物化視圖
- 12. ORACLE - 從物化視圖創建視圖
- 13. NHibernate和索引視圖(物化視圖)
- 14. 在視圖上創建物化視圖
- 15. 選擇查詢VS視圖
- 16. ActivityGroup VS視圖腳蹼
- 17. 上下文vs視圖
- 18. htmlHelper vs局部視圖
- 19. 視圖和佈局vs setGravity
- 20. 視圖的onTouchListener VS的onTouchEvent
- 21. UIViewController視圖 - > loadView vs viewWillAppear
- 22. 嵌套視圖VS獨立
- 23. UIScrollView觸及vs子視圖
- 24. 半屏視圖vs viewController
- 25. 列表視圖vs react-native-collapsible
- 26. 多個靜態文本視圖VS TextView VS的列表視圖VS多行的一個TextView
- 27. MySql臨時表vs視圖VS php數組
- 28. Exrin:視圖模型VS的VisualState VS型號VS的ModelState澄清
- 29. 圖片視圖VS UIImage View Xcode placement
- 30. Static vs創建動態圖像視圖
這比postgresql更普遍 - 相同的模式適用於大多數關係數據庫 – wrschneider