【发布时间】:2016-01-11 13:17:11
【问题描述】:
我的查询显示如下所示的输出
`UserName Status Count`
`A Pass 32`
`A fail 2`
`A Hold 4`
`B Fail 12`
`C Pass 40`
`C Fail 4`
`C Hold 3`
`D Pass 2`
我想要显示输出,首先记录为用户名 C 及其详细信息,第二个记录为 A 及其详细信息。我正在尝试获取具有高通状态的前 5 名记录及其相关的用户名记录。如果该用户名存在于前 5 名中,我不想留下第 6 条记录。请帮助
抱歉,我无法格式化为表格格式。
【问题讨论】:
-
“表格数据”是 RDBMS 吗?如果没有,您使用的是哪个品牌的 SQL?
-
你能提供你需要的样本输出吗?您只需要显示 status = 'pass" 的记录?
-
另外,您使用的表结构也会有所帮助。
-
我使用 SQL 2012 。上面提供的表格数据是我的查询的输出。
-
OUTPUT 应该是,前 5 条记录和最大数量的 C 为 Pass 状态,应首先显示,与 UserName 'C' 相关的其他记录应紧随其后。在那之后用户名'A'和它的记录。由于我们检索到 Top 5 ,我不想错过 UserName 'A' last record ,因为在选择 Top 5 时它将被忽略。
标签: sql sql-server sql-server-2012 tabular