从数据库中获取前 10 条记录并从当前登录用户中获取记录

Posted

技术标签:

【中文标题】从数据库中获取前 10 条记录并从当前登录用户中获取记录【英文标题】:Get top 10 records from db and record from current log in user 【发布时间】:2013-06-14 20:48:28 【问题描述】:

我有一个包含一些数据的表,只是我想显示该表中的前 10 个排名,在最后一列我想显示登录到应用程序的用户的排名。

示例

rank  | name |school

 1        aaa     JUU
 2        bbb      AL
 3        ccc      TN
 .       .....    ......

 8       xxx     KAR
 9       yyy     PUN
 10      zzz     KOL
 31      NNN      DEL 

在最后一行我想显示登录应用程序的用户的排名,例如。这里学生“NNN”已登录应用程序,他的排名是 31。 请帮帮我。

【问题讨论】:

您使用的是 mysql 还是 Oracle? PL/SQL 是 Oracle 对 SQL 的扩展,这就是我问这个的原因。你的标签让我有点困惑。 【参考方案1】:

你可以使用:

  SELECT * -- or whatever is your selection
    FROM mytable
   WHERE rank <= 10
   LIMIT 10
UNION
  SELECT *
    FROM mytable
   WHERE name = 'lll' -- Provided name is unique
ORDER BY rank;

Fiddle Demo

【讨论】:

仅供参考 - 对您认为有用的答案或问题进行投票是一个好习惯。它也会为您赢得一枚铜牌! ***.com/help/badges/6/supporter【参考方案2】:
    选择排名前 10 位 与当前用户联合 利用当前用户尚未进入前 10 名...

select rank, name, school from ranks order by rank asc limit 10
union 
select rank, name, school from ranks where name = ?? 
     and name not in (select  name from ranks order by rank asc limit 10)

【讨论】:

以上是关于从数据库中获取前 10 条记录并从当前登录用户中获取记录的主要内容,如果未能解决你的问题,请参考以下文章

如何从方法http Get in service Api Angular中仅获取前10条记录

如何获取当前登录电脑的windows账户信息

我需要从 SQL Server 查询中获取前 5 条记录,但要计算满足 where 子句条件的所有记录

如何获取其他系统登录的用户信息

从当前 iCloud 用户获取 CloudKit 记录

asp.net如何让未登录用户登录后能自动跳转到登录前访问的页面?