如何使用SQL对结果集中的前20条记录进行排序?

巴尔桑

我的要求是根据最常用的诊断获取诊断列表。因此,为了实现这一点,我在数据库的tblDiagnosisMst表中添加了一个名为DiagnosisCounter的列,每当用户选择该诊断时,该值就增加1。因此,我的查询如下所示:

  select DiagnosisID,DiagnosisCode,Name from tblDiagnosisMst 
  where GroupName = 'Common' and RecStatus = 'A' order by DiagnosisCounter desc, 
  Name asc

因此,此查询帮助我获取“诊断”列表,但对于诊断而言,降序排列,然后对“诊断名称”按字母顺序排列。但是现在我的客户希望在顶部仅显示20个最常用的诊断名称,然后所有名称应按字母顺序显示。但不幸的是,我被困在这一点上。如果能得到您对这个问题的有用建议,那将是非常感激的。

Damien_The_Unbeliever

这应该可以解决问题:

;With Ordered as (
  select DiagnosisID,DiagnosisCode,Name,
    ROW_NUMBER() OVER (ORDER BY DiagnosisCounter desc) as rn
  from tblDiagnosisMst 
  where GroupName = 'Common' and RecStatus = 'A'
)
select * from Ordered
order by CASE WHEN rn <= 20 THEN rn ELSE 21 END, 
  Name asc

我们根据ROW_NUMBER,将数字1-x分配给每一行diagnosiscounter然后,ORDER BY如果第一个条件的在1-20之间,则我们将该值用于第一个条件,而所有其他行的位置均等21然后将第二个条件用作平局决胜者,以对其余的行进行排序name

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从SQL Server中的存储过程结果集中获取前N条记录

来自分类Dev

SQL-如何为返回的每10条记录将结果集中的字段增加1

来自分类Dev

使用 Bigquery(标准 SQL)获取每组分组结果的前 n 条记录

来自分类Dev

如何使用近似对 LINQ to SQL 查询的结果进行排序?

来自分类Dev

如何使用笑话对elasticsearch结果进行排序

来自分类Dev

根据特定列排序后如何获取除前5条记录以外的所有记录

来自分类Dev

使用SQL获取前k条记录/表中的行

来自分类Dev

当select使用图形投影时如何将当前记录包括在结果记录集中

来自分类Dev

在MongoDB中,当记录超过100条时,如何对2d索引的$ near查询进行排序?

来自分类Dev

cqlsh:如何跳过结果集中的前几行

来自分类Dev

Python:使用pyzmq进行集中记录

来自分类Dev

我应该在切片前N条记录之前对查询集进行反向排序,还是将其计数为切片后N条记录?

来自分类Dev

使用脚本对具有180万条记录的文件进行排序

来自分类Dev

如何使用包含负数的 SQL Server 对前 4 个值进行排序

来自分类Dev

SQL-如何获得前5条记录和子记录

来自分类Dev

可以在已排序的结果集中对组进行顺序编号吗?

来自分类Dev

使用unix按月份对sql结果进行排序

来自分类Dev

如何获取django查询集中的下n条记录?

来自分类Dev

如何使用awk对csv文件中的记录进行排序

来自分类Dev

如何使用awk对csv文件中的记录进行排序

来自分类Dev

如何使用SQL查询仅选择1条记录

来自分类Dev

如果2条记录具有相同的列值,如何在按另一列对其进行排序之后按id升序对记录进行排序?-滑轨

来自分类Dev

如何使用口才对分组结果进行排序?

来自分类Dev

使用数据移动 API 时如何对结果进行排序?

来自分类Dev

如何从Redis获取前100条记录

来自分类Dev

最快获得前1000条记录的结果数量的方法?

来自分类Dev

OOP挑战如何在PHP mysql结果集中使用foreach进行嵌套?

来自分类Dev

NHibernate Fetch / FetchMany结果集中有很多重复项,如何使用ToFuture()进行修复

来自分类Dev

如何使用第二个纬度结果更新最后一条记录[SQLServer]

Related 相关文章

  1. 1

    从SQL Server中的存储过程结果集中获取前N条记录

  2. 2

    SQL-如何为返回的每10条记录将结果集中的字段增加1

  3. 3

    使用 Bigquery(标准 SQL)获取每组分组结果的前 n 条记录

  4. 4

    如何使用近似对 LINQ to SQL 查询的结果进行排序?

  5. 5

    如何使用笑话对elasticsearch结果进行排序

  6. 6

    根据特定列排序后如何获取除前5条记录以外的所有记录

  7. 7

    使用SQL获取前k条记录/表中的行

  8. 8

    当select使用图形投影时如何将当前记录包括在结果记录集中

  9. 9

    在MongoDB中,当记录超过100条时,如何对2d索引的$ near查询进行排序?

  10. 10

    cqlsh:如何跳过结果集中的前几行

  11. 11

    Python:使用pyzmq进行集中记录

  12. 12

    我应该在切片前N条记录之前对查询集进行反向排序,还是将其计数为切片后N条记录?

  13. 13

    使用脚本对具有180万条记录的文件进行排序

  14. 14

    如何使用包含负数的 SQL Server 对前 4 个值进行排序

  15. 15

    SQL-如何获得前5条记录和子记录

  16. 16

    可以在已排序的结果集中对组进行顺序编号吗?

  17. 17

    使用unix按月份对sql结果进行排序

  18. 18

    如何获取django查询集中的下n条记录?

  19. 19

    如何使用awk对csv文件中的记录进行排序

  20. 20

    如何使用awk对csv文件中的记录进行排序

  21. 21

    如何使用SQL查询仅选择1条记录

  22. 22

    如果2条记录具有相同的列值,如何在按另一列对其进行排序之后按id升序对记录进行排序?-滑轨

  23. 23

    如何使用口才对分组结果进行排序?

  24. 24

    使用数据移动 API 时如何对结果进行排序?

  25. 25

    如何从Redis获取前100条记录

  26. 26

    最快获得前1000条记录的结果数量的方法?

  27. 27

    OOP挑战如何在PHP mysql结果集中使用foreach进行嵌套?

  28. 28

    NHibernate Fetch / FetchMany结果集中有很多重复项,如何使用ToFuture()进行修复

  29. 29

    如何使用第二个纬度结果更新最后一条记录[SQLServer]

热门标签

归档