最大查询Sybase

时间:2014-06-02 11:55:18

标签: sql sybase

我有表"内容":

content_id , relative_sortorder
1          1
2          1
3          2
4          3
**5          4**
6          1
7          2
8          ...
9          100

我想通过选择max(relative_sortorder)并且需要低于当前relative_sortorder来执行返回先前content_id的查询。

我不知道,请帮助:)

这只返回max -

SELECT max(c.relative_sortorder) 来自" DBA"。"内容" C 在哪里c.relative_sortorder< 4和content_id< 5

但我需要前一行 enter image description here

好吧,所以我有这些结果,我想过滤它们以仅显示具有最大relative_sortorder的那个,在这种情况下是第二行。我不知道如何创建子查询

2 个答案:

答案 0 :(得分:0)

如果我说得对,请尝试使用TOP n功能。

SELECT TOP 1 content_id
  FROM "DBA"."CONTENT" 
  WHERE relative_sortorder < 4
  ORDER BY relative_sortorder DESC

答案 1 :(得分:0)

使用此查询,希望能为您效劳。

 select content_id from content  
   where  content_id < current_content_id 
     and relative_sortorder = (select max(current_sortorder) 
       as maxorder from content where maxorder <  current_relative_sortorder )