Sql 如何从db2中提取特定行
我需要从DB2获取特定的行Sql 如何从db2中提取特定行,sql,db2,Sql,Db2,我需要从DB2获取特定的行 select istore,row_num() over() from store where row_num()=2; 所以这里我需要从存储表中获取第二行,但上面的查询并没有获取任何数据。请帮助我 提前感谢您没有具体说明您的问题所在,但您的陈述中有两个错误: 窗口函数名为row\u number()not,row\u num() 不能在where子句中使用窗口函数 使用row\u number()而不使用任何order by是没有意义的,因为最终会出现随机排序 s
select istore,row_num() over() from store where row_num()=2;
所以这里我需要从存储表中获取第二行,但上面的查询并没有获取任何数据。请帮助我
提前感谢您没有具体说明您的问题所在,但您的陈述中有两个错误:
row\u number()
not,row\u num()
row\u number()
而不使用任何order by
是没有意义的,因为最终会出现随机排序
select *
from (
select istore,
row_number() over (order by something) as rn
from store
) t
where rn = 2;
用定义行顺序的列名替换
something
。没有任何排序,就没有“第二行”这样的东西。您需要在外部查询中获取它,如
select * from
(
select istore,
ROW_NUMBER() OVER (PARTITION BY some_column ORDER BY some_column) AS rn
from store
) tab
where rn = 2;