2016-04-15 30 views
-1

我的一個朋友正在問我尋求幫助。他想輸入DATAS到MySQL,然後生成像這樣的一個圖表:Mysql連續超過200個值?

LineGraph example from Charts.js: http://www.chartjs.org/

這裏只有一個問題:有4條線,他希望50個值的每一行,總數:

  • 溫度
  • 溼度
  • 二氧化碳

這對每個用戶來說都超過了200個值,我的問題是:如何使這些值容易訪問?
我以爲我可以爲每個用戶製作一張桌子,但我知道這個表現會受到嚴重影響。

+9

數據庫規範化是你的朋友在這裏...做一些研究。 – mituw16

+1

您需要首先處理您的架構。你有沒有一個例子可以擺脫?設計時不要忘記[數據庫規範化](http://en.wikipedia.org/wiki/Database_normalization)中的[Zero,One或Infinity Rule](http://en.wikipedia.org/wiki/Zero_one_infinity_rule)那。 – tadman

+1

line vs values,tomayto vs tomahto;你爲什麼要把這一切都排在一行?最簡單的設計應該是一個名爲'lines'的表,它具有'line_no','temp','humidity','light','co2'五個字段。 ...並且不需要爲每個用戶創建一個單獨的表格,只需添加一個'user_id'字段即可。 – Uueerdo

回答

1

MySql理論上可以有1000列。但無盡的行。 最好將數據分成不同的表格。 讓沒有爲每個用戶一個表,但是對於每一個數據分配:

  • table_temperature
  • table_humidity
  • table_light
  • table_co2

在列名可能的用戶名。 用於創建圖表最小值和最大值是必需的。這可以從列中輕鬆讀取。 (SELECT MIN/MAX)。

順便說一句:圖表可以使用PHP中的SVG製作漂亮的圖形。