我在Android中使用SQLite数据库。我的数据库中有一个名为tstResult的表。
AI SubID StudID StudName TotalMarks ObtainedMarks
--------------------------------------------------------
1 | 1 | 1 | Jakir | 100 | 90
2 | 1 | 2 | Rubel | 100 | 75
3 | 1 | 3 | Ruhul | 100 | 82
4 | 1 | 4 | Beauty | 100 | 82
5 | 1 | 5 | Bulbul | 100 | 96
6 | 1 | 6 | Ripon | 100 | 82
7 | 1 | 7 | Aador | 100 | 76
8 | 1 | 8 | Jibon | 100 | 80
9 | 1 | 9 | Rahaat | 100 | 82
现在我想要一个SELECT查询,根据获得的标记生成一个优点列表。在此查询中获得了标记" 96"将是优点列表中的顶级和所有" 82"标记将在优点列表中一个接一个地放置。像这样:
StudID StudName TotalMarks ObtainedMarks Merit List
----------------------------------------------------------
| 5 | Bulbul | 100 | 96 | 1
| 1 | Jakir | 100 | 90 | 2
| 9 | Rahaat | 100 | 82 | 3
| 3 | Ruhul | 100 | 82 | 3
| 4 | Beauty | 100 | 82 | 3
| 6 | Ripon | 100 | 82 | 3
| 8 | Jibon | 100 | 80 | 4
| 7 | Aador | 100 | 76 | 5
| 2 | Rubel | 100 | 75 | 6
我该怎么做?任何建议都有很大的帮助。
答案 0 :(得分:1)
您可以计算获得的数字明显更多的数量(+1)
SELECT res.StudId
, res.StudName
, res.TotalMarks
, res.ObtainedMarks
, (
SELECT 1+COUNT(DISTINCT obtainedMarks)
FROM tstResult greater
WHERE greater.ObtainedMarks > res.ObtainedMarks
) MeritList
FROM tstResult res
ORDER BY res.ObtainedMarks DESC
答案 1 :(得分:0)
您可以使用此查询
SELECT * FROM tstResult ORDER BY ObtainedMarks DESC
通过获取标记,您将按照排序顺序为您提供结果。