如果我有一个类似下面的表格,我想得到所有独特的人并列出它们。不能使用名字,因为可能有多个人具有相同的名字。在这种情况下,有2个吉姆。
id description username firstname lastname
1 blah kim Kim Something
2 blah2 kim Kim Something
3 blah3 jim Jim Whatever
4 blah4 jim Jim Whatever
5 blah5 tim Tim Whoever
6 blah6 tim Tim Whoever
7 blah7 jim2 Jim Persons
8 blah8 jim2 Jim Persons
因此查询需要打印如下列表:
Jim Whatever
Jim Persons
Kim Something
Tim Whoever
更新
有时候我不会写我尝试过的东西,因为我没有尝试任何东西,而我没有尝试过的原因是因为它将是垃圾代码永远无法运作。例如,这是我想要做的,但当然这不是正确的写作方式:
$query = mysql_query("SELECT * FROM table WHERE username=UNIQUE") or die(mysql_error());
while($row = mysql_fetch_array($query)) {
echo $row['firstname']." ".$row['lastname']."<br />";
}
UPDATE2
这是最终为我工作的......
$query = mysql_query("SELECT DISTINCT username, firstname, lastname FROM table WHERE jobid='".$_GET['id']."'") or die(mysql_error());
while($row = mysql_fetch_array($query)) {
echo "- ".$row['firstname']." ".$row['lastname']."<br />";
}
我需要使用额外的jobid列来更细粒度。之前我没有提到那个字段,因为我知道如何在知道如何选择唯一记录后如何添加它。
答案 0 :(得分:1)
您需要的是:
SELECT DISTINCT(CONCAT(firstname,“”,lastname))complete_name FROM table_name;