做一个聊天窗口消息显示,下面能正确显示30条消息。但是升序排序
$db = db::instance(‘sdata’);
$rs = $db->select(‘*’)->from(‘msg’)->where(array(‘(`uid` = :uid)’))->orderbyasc(array(‘id’))->bindvalues(array(‘uid’ => $uid))->limit(30)->query();
想只显示最新的30条,用降序排序,orderbyasc改为orderbydesc竟然不得,请问应该怎么写才对?
感觉这种写法也不怎么好,还有更简单点的写法吗?先谢谢了!
回复讨论(解决方案)
那得看你db类怎么写的。
好像也不是降序,比如数据库是这样,6是最新的
1
2
3
4
5
6
比如想显示最新3条
4
5
6
sql应该怎么写?
class db
{
public static $sdata= array(
‘host’ => ‘127.0.0.1’,
‘port’ => 3306,
‘user’ => ‘root’,
‘password’ => ‘123456’,
‘dbname’ => ‘udata’,
‘charset’ => ‘utf8’,
);
}
select * from (select * from table order by id desc limit 10) as a order by id asc