合并具有相同第二列的第一列

时间:2015-04-29 01:41:35

标签: php mysql

我有INNER JOIN查询返回此结果:

first column | second column
     2       |       15 
     5       |       16
     6       |       16
     5       |       18
     6       |       22

我想在我的页面中输出它们:

first column | second column
     2       |       15 
     5,6     |       16
             |       18
             |       22
Total first column: 2

它将组合具有相同第二列的第一列。第一列的合并值将在它们之间共享。

并且还会告诉总第一列(在示例中为2)。

我还在尝试使用此代码:

if($stmt = $con->prepare("SELECT firsttb.firstcolumn, secondtb.secondcolumn FROM firsttb INNER JOIN secondtb ON firsttb.connectid = secondtb.connectid WHERE firsttb.getid = ? ORDER BY secondtb.secondcolumn")){

  $stmt->bind_param("i",$_GET["getid"]);
  $stmt->execute();
  $stmt->bind_result($firstcolumn,$secondcolumn);

  $lastid = 0;
  $total = 0;
  $combine = "";

    while($stmt->fetch()){

      if($lastid == $secondcolumn){
        $combine = $combine."".$firstcolumn;
        $lastid = $secondcolumn;
      }

      else {
        $totalrow = $totalrow + 1;
        $lastid = $secondcolumn;
        $combine = $secondcolumn;

        echo $combine." | ".$secondcolumn."<br>";

      }

    }
  $stmt->close();
  echo "Total first column: ".$totalrow;
}

但只得到这个输出:

first column | second column
     2       |       15 
     5       |       16
     5       |       18
     6       |       22
Total first column: 4

可以废弃我的代码并使用您自己的代码创建代码。只是想寻找正确的想法。

0 个答案:

没有答案