我在MySQL中使用数据库并通过PHP返回值。我正在使用Zend2框架。
我有下表:
[ID] | [Name] | [Amount]
-----|--------|---------
1 | Alex | 10
-----|--------|---------
2 | Bruno | 5
-----|--------|---------
3 | Miguel | 6
-----|--------|---------
4 | Ana | 5
我需要联合画画。在这种情况下,而不是显示
结果应显示
以HTML格式显示的代码:
<?php foreach ($rows as $row) : ?>
<tr>
<td><?php echo ++$i; ?></td>
<td><?php echo $this->escapeHtml($row->amount); ?></td>
<td><?php echo $this->escapeHtml($row->name); ?></td>
<td><img src="<?php echo $row->imageMedal($i); ?>"/></td>
</tr>
<?php endforeach; ?>
Zend2结构没有改变。
答案 0 :(得分:3)
您可以GROUP_BY
数量并使用相同的Name
连接amount
组,然后您可以从最大值按amount
排序并剪切前三行:
SELECT `amount`
, GROUP_CONCAT(`Name` SEPARATOR ', ') AS `name`
FROM `table`
GROUP BY `amount`
ORDER BY `amount` DESC
LIMIT 0, 3
答案 1 :(得分:0)
@KeplerBR,这是ZF2中针对您的查询的解决方案:https://gist.github.com/settermjd/3360ccabb2b761a6ee11