1
我试图按列排序,而我想忽略几条应位于顶部的记录,并按剩余记录排序。任何快速的帮助,非常感谢。这是我迄今为止所拥有的。谢谢。SQL:尝试按降序排列而忽略顶部的两条记录
select *
from table
order by case when column in (1,2) then order by 1 desc;
我试图按列排序,而我想忽略几条应位于顶部的记录,并按剩余记录排序。任何快速的帮助,非常感谢。这是我迄今为止所拥有的。谢谢。SQL:尝试按降序排列而忽略顶部的两条记录
select *
from table
order by case when column in (1,2) then order by 1 desc;
select *
from table
order by case when column in (1,2) then 1 else 2 end asc, column desc
这被称为条件排序或顺序。本质上,你给那些你想在顶部的那些明确的值,然后继续你的正常排序。
我认为你正在寻找的语法是这样的:
Select *
From Table
Order By Case When Column In (1,2) Then 0 Else 1 End,
Column;
我加了Column
作为辅助排序,因为你提到:
和秩序由剩余的记录
我的意思是我想忽略我顶部的条件行并排列其他行 –
尝试使用JOIN – mike510a
这是SQL 2008还是2012?这很重要,因为OFFSET FETCH可以为您做到这一点 –