从DB查询时如何设置顺序?

时间:2014-09-05 15:44:34

标签: php mysql joomla

我正在尝试从数据库中查询以获取某个类别(52)的joomla文章,并且已发布。

我想以最新创建的方式返回这些内容,但我不知道在查询的ORDER BY中添加位置。

我确实尝试在->orderby('created');之上添加$db->setQuery($query);,但这似乎不起作用,它似乎仍然只是按ID的升序显示。

有人可以帮忙吗?

<?php
$i = 0;
$db = JFactory::getDbo();     
$query = $db->getQuery(true);     
$query->select('*')
->from('#__content')
->where('catid = 52 AND state = 1');    
$db->setQuery($query);     
$rows = $db->loadObjectList();

foreach ( $rows as $row ) {
    if(++$i > 1) break;
    echo "<li><a href='/why-us/news/".$row->id."-".$row->alias."'>".$row->title."</a></li>";
}
?>

1 个答案:

答案 0 :(得分:3)

您只需使用->order('created DESC')即可获得所需的结果。

检查documentation page, here