如何从同一个表中的多个相同名称回显单个名称

时间:2015-04-07 20:44:53

标签: php mysql

我在如何从同名的(三个)多个值显示/回显单个名称时遇到了麻烦。我的表名是usages

id | account  | amount  |  date
1    Purchase   10000      2015-04-01
2    Repair     200000     2015-04-02
3    Purchae    30000      2015-04-03
4    Purchase   10000      2015-04-04
5    Mafanikio  20000      2015-04-04
6    Simon      20000      2015-04-04
7    Spare      10000      2015-04-04

这是我的PHP代码:

global $database;
$i = 1;
$seL = "SELECT * FROM usages ";
$Q =$database->query($seL);
$num = $database->query_to_num_rows($seL);
if($num !=0) {
    while ($fet =$database->fetch_array($Q)) {
        $show =$fet['account'];
        $sel2 ="SELECT * FROM usages WHERE account = '$show' GROUP BY account ";
        $Que =$database->query($sel2);
        $numR =$database->query_to_num_rows($sel2);

        if($numR ==1) {
            $arr = $database->fetch_array($Que);    
            echo "<br> ".$i++. "&nbsp;&nbsp;". $a =$arr['account']; 

结果如下:

1  Purchase
2  Repair 
3  Purchase
4  Purchase
5  Mafanikio
6  Simon 
7  Spare

我想要的答案我需要这样

1  Purchase
2  Repair 
3  Mafanikio
4  Simon 
5  Spare

我不希望重复相同的名称。

3 个答案:

答案 0 :(得分:0)

使用DISTINCT

在表格中,列可能包含许多重复值;有时您只想列出不同的(不同的)值。

DISTINCT关键字可用于仅返回不同的(不同的)值。

答案 1 :(得分:0)

尝试将此作为您的查询:

"SELECT DISTINCT * FROM usages WHERE account = '$show'";
"SELECT DISTINCT * FROM usages ";

使用你想要从中获取单一姓名的任何人。

答案 2 :(得分:0)

global $database;
$i = 1;
$seL = "SELECT DISTINCT account FROM usages ";
$Q =$database->query($seL);
$num = $database->query_to_num_rows($seL);
if($num !=0) {
    while ($fet =$database->fetch_array($Q)) {
        $show =$fet['account'];
        $sel2 ="SELECT * FROM usages WHERE account = '$show'";
        $Que =$database->query($sel2);
        $numR =$database->query_to_num_rows($sel2);

        if($numR ==1) {
            $arr = $database->fetch_array($Que);    
            echo "<br> ".$i++. "&nbsp;&nbsp;". $a =$arr['account'];