2017-08-26 20 views
0

Mysql表。具有大量列的mysql表的最佳方法

phones 
| ID | Name //5-6 columns 
Specifications 
| ID |phone_id| ram | camera | price |network // 50 columns approx 

現在我的規格表中有50列,到目前爲止,所以我需要一個建議,如何處理這種情況呢?我是否需要創建其他表來拆分規格表,還是可以繼續使用? 爲了更好的速度和性能,我需要更好的建議。

+2

DB設計是不可能沒有更多的信息。乍一看,我可以在一張表中看到列名稱,它們似乎可以被拆分出來,所以我猜你需要坐下來決定哪些列更適合單獨的表格。例如「ram」和「price」是否真的適合同一張表?當然,您有超過1種產品,因此您可以「_likely_」制定價格表,並將價格映射到(例如)具有所有product_id的產品表中的product_id。也許「規格」表與RAM和其他東西。很難肯定地說,你所提供的信息 – James

+0

謝謝你的回覆。 –

+0

我已將一些基本列如名稱,價格,圖片放在一個表格中,並且保留在規格表格中。您可以查看此鏈接 http://www.gsmarena.com/samsung_galaxy_note8-8505.php –

回答

1

超過50+列處理不會像插入,更新最好approach-

  1. 資料庫操作,選擇可能需要時間。
  2. 當您在表格中處理具有50列以上的 時,處理數據變得非常困難。

所以我建議不要繼續向列表中添加列。 mysql-table-with-40-columns可能是有用的解決您的問題。

1

也許你可以有一個主表與id,名稱,日期和一些更多的職位特定的東西。 然後,您可以創建1個meta_table,其中包含id,main_id(此鏈接指向主表中的帖子),meta_name(即:價格或顏色或維度),meta_value(即:125,95或黑色或150 x 50 x 8)。 通過這種方式,您可以將多個列狀值存儲到一個表中,並使用一個id鏈接到一個主表。 這與wordpress正在使用的概念相同。否則,你也可以在你的主表中使用一些稱爲序列化數據/數組的東西,這是一個有許多數組鍵和它們的值的列字段。

相關問題