我正在尝试提出一个有效的 SQL 查询语句来满足我的需求,但我很难做到这一点。
我有一个包含用户的表。该表中有几个字段,其中两个是“分数”和“日期”。当用户达到某个分数时,我将当前日期的时间戳添加到“日期”字段。否则,该字段保持为空。
我正在尝试对该列表进行排序,以便首先获得最新日期的用户,然后按分数排序其余用户。例如:
user1 - score:500 - 2/JAN/13
user2 - score 409 - NULL
user3 - score 500 - 3/JAN/13
user4 - score 500 - 1/JAN/13
user5 - score 239 - NULL
执行查询后,我想要下一个输出:
user4
user1
user3
user2
user5
我希望我说清楚了。这是我到目前为止所得到的:
SELECT userName FROM tblUsers ORDER BY date,score ASC
据我所知,这段代码的问题在于它按日期和分数字段按升序对列表进行排序,但是在对日期进行升序排序后,我需要降序的分数。
有任何想法吗?