2013-04-11 211 views
2

這可能是一個愚蠢的問題,但它是直截了當的。是否可以從另一個視圖創建視圖?

是否可以從現有視圖創建視圖?

假設我已經tableA。我從tableA創建vwtableA,現在我想從vwtableA創建vvVwtableA。

在僞代碼將是這樣的:

create view vwA as select * from tableA; 
create view vwvwA as select * from vwA; 

這可能嗎? 我正在嘗試這樣的事情,並且我沒有執行該語句的MySQL錯誤,但我無法瀏覽第二個視圖... MySQL Workbench不斷加載,我不知道這是否可能是原因。

我的表A有大約100 000條記錄,vwA有大約50000條記錄,vwvwA也應該有大約50000條記錄。

+0

什麼'SHOW PROCESSLIST'節目選擇?當你的工作臺應用程序正在等待時,可能會有一些查詢運行。 – tadman 2013-04-11 03:25:51

+0

我得到這個''1','root','localhost:50323','tese','Query','0',NULL,'SHOW PROCESSLIST' '2','root','localhost:50326 ','tese','睡眠','1','',NULL '這看起來很正常我猜... – dazito 2013-04-11 03:30:23

+0

你用哪個軟件做mysql? – chintan 2013-04-11 03:35:44

回答

3

是的,這是可能的。請參閱MySQL documentation

select_statement是一個SELECT語句,它提供視圖的定義。 (當您從視圖中選擇,你實際上使用SELECT語句選擇)select_statement中可以從基表或其他見解

+0

由於完全相同的數據,那麼它是壞了工作臺或意見本身不能做一個簡單的'從vwVwtablea限制0,10'作爲選擇*它保持運行/加載/處理,並且不會生成任何東西 – dazito 2013-04-11 03:34:26

+0

可能。首先嚐試終端/命令行,以確保在您指責Workbench之前。 – 2013-04-11 03:38:17

0

只是複製第一個視圖(vwA)並創建一個新視圖(vwvwA)。這樣簡單。 ;-)

+0

我不能複製,因爲他們不會有存儲 – dazito 2013-04-11 03:31:15

相關問題