2011-02-10 94 views
0

什麼是接近類似的最好的事情:查詢多個MySQL表

SELECT * FROM(節目表,如「T_DATA___」)//無效

有超過600臺名爲T_DATAxy其中x y是字母

+0

您使用的是什麼版本的MySql? – 2011-02-10 23:45:18

回答

0

這個設計出現了一些嚴重錯誤。一次訪問600個表格意味着訪問多達1800個磁盤文件。你應該分割這些數據。

至於第四個問題,我擔心你將需要使用存儲過程或外部應用程序來構建多個UNION查詢語句。不過,我似乎還記得在UNION中合併了32個表的限制。

0

你可以得到你想要的數據表的列表(顯示錶__),然後使用mysql轉儲,傳入該列表。

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

如果你有決心從SQL查詢得到它,你可以使用宏生成相應的SQL查詢並立即執行它們。例如獲取表的列表,用「;(換行符)select * from」替換換行符,執行所有查詢。 (emacs mysql模式使這非常簡單)。

正如其他評論者所說,由於#表的限制,您將無法在單個查詢中執行此操作。