2017-01-13 28 views
0

我想將當前的HUGE表格拆分爲多個表格。新表格應根據他們在特定領域的入口進行分割。如何將表格拆分爲多個表格

E.g.如果字段是性別,則每個記錄選擇爲男性和女性,如同兩個表一樣爲男性另一個女性。

Old table: 
Gender First Name  Last Name 
Male  John   Smith 
Female Sally   Smith 


New tables: 
Name: Male 
Gender First Name  Last Name 
Male  John   Smith 

Name: Female 
Gender First Name  Last Name 
Female Sally   Smith 

除場是城市。而不是在代碼中分別命名每個城市,像所有相同的城市一樣被挑選並分組到單個表格中。任何幫助將非常感激。

+2

拆分表通常是一個非常糟糕的主意。 –

+1

看起來像一個非常糟糕的主意。把它保持爲一張單桌! – jarlh

+0

同意上述意見。如果您遇到速度問題,您可能需要查看索引。 – GibralterTop

回答

0

首先查詢:

Insert into Table2 select * from Table1 where gender = 'female' 

第二個查詢:

Delete from Table1 where gender = 'female' 

無論如何,我會做一些研究,以瞭解是否真正需要的表分割是針對你的情況,或者如果它只是增加了DB結構(和相對代碼)的複雜性

-1

你在問什麼可以使用分區來完成。由於您使用的是MySQL,因此您需要專門檢查列表分區,因爲它會根據指定的值對錶進行分區。您仍然可以使用相同的查詢,但數據庫將自動使用底層正確分區。

+1

這個問題被標記爲MySQL。 – jarlh

相關問題