【发布时间】:2016-10-10 18:56:25
【问题描述】:
我有一个这种格式的mysql表
Mysql table format
_______________________________
| column1 | column2 | column3 |
|_________|_________|_________|
| A | val Z | val Y |
|_________|_________|_________|
| A | val X | val W |
|_________|_________|_________|
| A | val V | val U |
|_________|_________|_________|
| B | val T | val S |
|_________|_________|_________|
| B | val R | val Q |
|_________|_________|_________|
| C | val P | val O |
|_________|_________|_________|
我需要做的是返回数组中 column1 中每个值出现的所有行。数组可能是这样的:
$A = array($row1,$row2,$row3);
$row1 = array("column1"=>"A", "column2"=>"val Z", "column3"=>"val Y",);
$row2 = array("column1"=>"A", "column2"=>"val X", "column3"=>"val W",);
$row3 = array("column1"=>"A", "column2"=>"val V", "column3"=>"val V",);
我希望我足够清楚。基本上我需要按 column1 中值的唯一性对行进行分组。
mysql 结果应该包含如上所述分组的数组中的所有行。像这样:
$result = array($A, $B, $C);
我需要对输出做的就是在表格中显示它。如果有更好的方法,请告诉我。我希望表格采用这种格式:
_________________________________________________
| Header1 | Header2 | Header3 | Header4 |
|___________|___________|___________|___________|
| A | val Y | val W | val U |
|___________|___________|___________|___________|
| B | val S | val Q | |
|___________|___________|___________|___________|
| C | val O | | |
|___________|___________|___________|___________|
这是我唯一能想到的办法。如果有更好的方法,请告诉我。感谢您的帮助。
【问题讨论】:
-
将你的mysql查询添加到问题中
-
我有这个
$sql = "SELECT * FROM table;"; $result = mysqli_query($conn, $sql); $rows = mysqli_fetch_assoc($result); foreach($rows as $row){ //print_r($row); }在 foreach 循环中我应该做什么?