MySQL查询多列排序

时间:2015-05-29 10:34:49

标签: php mysql mysqli

所以,我写了一个查询,它应该从'messages'表中获取15个最新结果,但是按日期顺序排列结果。我目前的查询如下:

for(int i=0; i < myList.size ; i++) {

  if(qrCode.equals(myList.get(i).get("qrcode"))){
      // get your data here you can get according to qrCode. Like

      String density = myList.get(i).get("destiny"); // same for others

  }

正如您所看到的,我使用'ID DESC'来获取最近的15个结果,但'timeSent ASC'并未按照我希望的顺序对结果进行排序。

如何更正我的查询以实现此目标?

1 个答案:

答案 0 :(得分:2)

首先通过对ID进行排序来获取消息,然后根据timeSent对其进行排序。你可以试试这个 -

SELECT * FROM 
   (SELECT * FROM messages WHERE chatID = 1 ORDER BY ID DESC LIMIT 15) messages_ordered 
ORDER BY timeSent ASC