我是全新的mysql,所以請原諒我在這裏的知識水平,並隨時指導我在更好的方向,如果我正在做的是超出日期。大型Mysql查詢(加入結果並修改字符串)
我從數據庫中提取信息來填寫一個php頁面。
我的表:
服務器:
|ServerID (int) | ArticleID (int) | locationID (int) |
| 1 | 46 | 55 |
| 2 | 11 | 81 |
| 3 | 81 | 46 |
| 4 | 55 | 11 |
| 5 | 81 | 99 |
| 5 | 11 | 52 |
文章:
|ArticleID (int) | Name (varchar) | Typ (int) |
| 46 | domain | 0 |
| 81 | root-server | 1 |
| 55 | vserver | 2 |
| 11 | root-server2 | 1 |
地點:
|LocationID (int) | location (varchar) |
| 46 | 1-5-15-2 |
| 81 | 1-5-14-2 |
| 55 | 2-25-1-9 |
| 11 | 21-2-5-8 |
| 99 | 17-2-5-8 |
| 52 | 1-8-5-8 |
結果:
|location (int) | name (varchar) | count (int) |
| 1 | root-server | 1 |
| 1 | root-server2 | 2 |
| 17 | root-server | 1 |
結果中的位置是位置表中位置的第一個數字塊(1-5-15-2 - > 1,1-8-5-8 - > 1,21-2-5 -8→21,17-2-5-8→17)。 計數是具有相同名稱和相同第一個位置塊的所有服務器的總和。
有人認爲只有一個查詢纔有可能得到這個結果嗎?
感謝您的任何答案!
在那裏每個那些更多項目表?看起來你有外鍵作爲主鍵?什麼是類型?爲什麼它不在結果中?此外,爲什麼在結果中的位置1 1 17,在您的示例中不存在 – 2014-10-08 12:44:08
@naturalc是每個表中都有更多的項目。服務器表有20000個項目和文章表500.女巫類型?結果中的位置是位置表中位置的第一個塊。 (1-5-15-2→1,1-8-5-8→1,21-2-5-8→21,17-2-5-8→17) – TobsA13 2014-10-08 12:54:20