的交易是這樣的:替代索引一個MySQL視圖
我有一個是建在這樣一個MySQL數據庫: 有三個表,一個「對象」:
ID | Type | Name | Description
--------------------------------------------
1 | Restaurant | Joe's Grill | A Great Place
和比設計成類似於關於每個「對象」的元數據的表:
Object ID | Name ID | Description ID
-----------------------------------
1 | 2 | 4
和另一表中的元數據的字符串:
ID | String
---------------
1 | Hello
2 | City
3 | London
4 | Paris
所以在這種情況下,喬的燒烤餐廳(ID:1)具有連接到它 元數據(可以看到,由元數據表的對象ID列) 和Name ID和說明ID列對應到元數據字符串表的字符串。
的問題是,SELECT查詢將需要多個每次連接, 所以我想創建一個視圖,將自動執行此操作, 事情是我也想索引這個觀點,因爲該視圖將 也變得非常大。
的問題是:
我知道這是不可能創建一個視圖索引?有沒有其他辦法呢?
如果不是,下一個最佳選擇是什麼?也許有另一種方式,除了查看 來創建一個查詢表外? 可能會設置一個腳本來做到這一點?
如果這兩者都不可能,還有什麼我可以做的嗎?
謝謝大家提前,我真的被破解我的頭在這個 相當長的一段時間。
視圖基本上只是一個存儲的查詢。涉及視圖的任何查詢都會涉及基礎表上的索引。除非視圖包含派生字段(例如「從...中選擇concat(a,b)」),否則索引視圖的字段不會有任何意義。 –