2014-12-03 163 views
0

我需要從DB2中提取特定的行。如何從db2中提取特定的行

select istore,row_num() over() from store where row_num()=2; 

所以在這裏,我需要從商店表中獲取第二行,但上面的查詢並沒有獲取任何data.please幫助我。

在此先感謝

回答

0

你需要它在外部查詢取像

select * from 
(
select istore, 
ROW_NUMBER() OVER (PARTITION BY some_column ORDER BY some_column) AS rn 
from store 
) tab 
where rn = 2; 
0

你沒有指定你的問題是什麼,但有兩個錯誤在你的語句:

  1. 的窗口功能被命名爲row_number()沒有,row_num()
  2. 你不能在where子句中使用窗口函數。

使用row_number()沒有任何order by沒有意義,因爲你結束了隨機排序。

select * 
from (
    select istore, 
      row_number() over (order by something) as rn 
    from store 
) t 
where rn = 2; 

替換something與定義你行的順序列名。沒有任何命令,就沒有「第二排」這樣的東西。