2016-02-08 34 views
0

我希望下面的有道理......SQL/PHP来抓住从多个表项的最小和最大

我抓住所有的使用以下(另一个脚本执行getChildRecords)的儿童记录:

<?php $children = $this->item->getChildRecords(); ?> 

我然后做一个foreach抓住所有的孩子们家的ID:

<?php 
foreach ($children as $i => $id) 
    { 
    $house = JTable::getInstance('house', 'MyTable'); 
    $house->load($id); 
?> 

然后我拉了回来袋鼠的数量为每一个孩子的房子进入MS:

<div><?php $house->rooms; ?></div> 

和整理了我的foreach:

<?php } ?> 

孩子表可能包含以下房间的条目:

ID - 22间 客房 - 1 | ID - 22个 房间 - 5 | ID - 22 房间 - 2 | ID - 22间 客房 - 3

问:

我想表明的是最小至最大数量从所有子项的房间。

即1-5

+0

我不知道实际的问题是什么? – Epodax

+1

如果我只是使用<?php $ house-> rooms; ?> - 我会得到1523(房间) - 我想要的是最小/最大,即1-5 – user991830

回答

0

你甚至需要该页面上的单个子项吗?或者它是一个概述? 如果您不需要单独条目,您可以建立一个像

public function getMinAndMaxRooms() { 
    $con=mysqli_connect("localhost","my_user","my_password","my_db"); 
    $result mysqli_query($con,"SELECT id, MIN(rooms), MAX(rooms) FROM rooms GROUP BY id"); 
    if ($result !== false) { 
     return $result->fetch_all(MYSQLI_NUM); 
    } 
    return array(); 
} 

且模板中循环通过它的功能:

<?php foreach ($this->item->getChildRecords() as $child) : ?> 
<?php echo $child[0) . ': ' . $child[1] . '-' - $child[2] ?> 
<?php endforeach; ?>