2012-09-10 92 views
0

我試圖在數據庫'crop'中獲取一條記錄'害蟲'中的每個元素。實際上,我的目的是在'害蟲'字段中獲取所有不同的害蟲。如何從mysql數據庫中獲取一條記錄中的每個元素

但是數據庫中不僅有'Pests'中的一個元素。例如:

Name        Pests 

Name1        Grasshopper  
            Thrips  
            Potato Leafhoppe  
            Stink Bugs  
            ... ... 

Name2        Green Cloverworm 
            Mexican Bean Bettle 
            ... ... 

我的代碼如下所示。但結果不是我想要的。這將顯示每列中的所有有害生物。但我想在所有列中的所有不同的害蟲和顯示錶中的每一種有害生物,像

Pest | Grasshopper|Thrips|Potato Leafhoppe|Stink Bugs|Green Cloverworm|Mexican Bean Bettle|... ... 

我好感激,如果任何人都可以給我一些暗示對如何實現這一目標。 非常感謝!

$search = "SELECT distinct Pests from crop ORDER BY Pests ASC"; 
$result = mysql_query($search); 

echo '<table>'; 
echo '<tr>'; 
while ($rs = mysql_fetch_row($result)){ 
     echo '<td>'.$rs[0].'</td>'; 
} 
echo '</tr>'; 
echo '</table>'; 
+3

你需要[規範化](http://en.wikipedia.org/wiki/1NF)你的數據庫結構。 – moonwave99

回答

0

簡單的答案是你不應該在一行單元中存儲多個值。 SQL操作不能處理像這樣的數據。

您需要像這樣存儲數據。

Name  Pest 

Name1 Grasshopper  
Name1 Thrips  
Name1 Potato Leafhoppe  
Name1 Stink Bugs  
Name2 Green Cloverworm 
Name2 Mexican Bean Bettle 
相關問題