2016-07-06 75 views
-2

我在做一个MySQL项目,我需要检索多少个结果/行,直到达到该值为止,排序为points行。SQL计数直到达到特定值的行数

我这样做,但它是一个拙劣的工作代码,我想我可以使用COUNT(value)功能一个简单的SQL改善。

#Python 
sql = "SELECT nick FROM users ORDER BY points;" 
cursor.execute(sql) 
result = cursor.fetchall() 
for row in result: 
    rank += 1 
    if nick == sender: 
     print("you're rank number #" + str(rank)) 

不要用Python代码来回答我,它不是必需的。我只是贴出来让你知道我或多或少想要得到什么。

+0

所以,你想拿到第X行所取代? – Fairy

+0

@ st0ph嗯,是啊,很准的,我需要知道有多少用户是他 –

+1

面前表达你想做的事就是用样本数据和预期的效果更好的方法。 –

回答

0

鉴于你能够得到尼克的ID,

select count(1) from users where id < ? 

在哪里?已经与用户的ID

+0

对不起,我没有说,我已经通过'points'订购的用户,而不是'id' –

+0

然后在查询中使用点,而不是ID –

相关问题