我必須從非常舊的mysql數據庫(大約在2003年)做出報告。所以風格很糟糕。 結構是該表具有列:id,類型,字段,值。在這些領域是所有的信息,但對於一個ID有很多條目。如果通常數據將被存儲爲:id,名稱,速度,服務,項目等,那麼在這個表中,數據存儲爲:id(用於多行),type,field(這裏放置名稱,速度,服務。 ......但只是其中的一個),價值(領域'領域'的價值)。 但我需要結合這個表數據爲每個id(其中是每個id與多個條目)與表之間的連接,然後與第三個表(它實際上是第一個表,但與不同的id)相結合。我寫了一個腳本,但速度非常慢,PHP無法在30秒內執行它。也許我應該寫腳本的一些方向?從錯誤的格式化數據庫檢索數據
表 「基地」:
id | type | field | value
表 「連接」:
master | slave
我從表 「基地」 過濾的 「類型」 的數據,然後讓第一行和正確的數據,然後循環,而從表「連接」「主」指向「基」項目與我需要的「類型」,並獲得正確的數據。 和全腳本太慢:
http://paste.php.lv/ce693aee64e9617b509e336b25e3262f?lang=php
附註:這聽起來像是鍵值存儲,並且在某些形式和情況下,比每欄有一列更有效d。 – Sherlock 2012-07-10 11:50:51
是的,它可能是這樣的,它可能更有效,但使用這張桌子非常困難。 – dpitkevics 2012-07-10 11:53:49