2012-06-18 39 views
1

基本上我想要做的是從列x中獲取信息,無論它提到了多少次。也就是說,如果我有這樣的表:SQL查詢選擇一個名稱,無論它提到了多少行

x  | y  | z 
------+-------+--------  
hello | one | bye  
hello | two | goodbye  
hi | three | see you 

所以我想要做的就是創建一個查詢,會得到所有的都提到了沒有重複的X列的名字,並把它變成一個選擇列表。

我的目標是,我將有兩個而不是三個選項,你好選擇列表和喜

這是我迄今爲止這是行不通的。希望你們知道這個問題的答案:

function getList(){ 
$options="<select id='names' style='margin-right:40px;'>"; 
$c_id = $_SESSION['id']; 

$sql="SELECT * FROM names"; 
$result=mysql_query($sql); 

$options.="<option value='blank'>-- Select something --</option>" ; 
while ($row=mysql_fetch_array($result)) { 

$name=$row["x"]; 

$options.="<option value='$name'>$name</option>"; 
} 

$options.= "</SELECT>"; 
return "$options"; 
} 

對不起,混亂...我編輯源

+0

如果有東西不重複,可以說是'DISTINCT'? – 2012-06-18 03:09:46

+0

無論如何,在這個問題上有*太多垃圾*。只包括重要部分:1)數據2)查詢3)當前*和*期望的輸出。 (即沒有HTML生成,除非它實際*相關)。 – 2012-06-18 03:10:46

回答

1

您似乎只使用x。所以你可以使用查詢:

SELECT DISTINCT x FROM names 
+0

謝謝你完美的作品 – Baruch

0

如果這是你的查詢

$sql="SELECT * FROM names"; 
$result=mysql_query($sql); 

然後

$sql="SELECT DISTINCT x FROM names"; 
$result=mysql_query($sql); 

如果您只需要一列,請將*更改爲x

+0

不要改變任何東西比這兩行 – 2012-06-18 02:59:04

+0

對不起,我編輯我的源可以幫助我嗎? – Baruch

+0

不介意,明白了,明顯是我需要的!謝謝! – Baruch