Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何根据创建日期限制select语句只返回一行?_Sql_Oracle_Greatest N Per Group - Fatal编程技术网

Sql 如何根据创建日期限制select语句只返回一行?

Sql 如何根据创建日期限制select语句只返回一行?,sql,oracle,greatest-n-per-group,Sql,Oracle,Greatest N Per Group,如何将select语句限制为仅显示一条?如果您使用的是Oracle 12c,则可以使用交叉应用而不是内部联接 寻找交叉应用或外部应用-这是您正在寻找的模式 如果您使用的是较低版本,则可以使用“行数”功能: inner join ( SELECT inactivationremark, createts, row_number() OVER( PARTITION BY ir.partnerid ORDER BY ir.createts

如何将select语句限制为仅显示一条?

如果您使用的是Oracle 12c,则可以使用交叉应用而不是内部联接

寻找交叉应用或外部应用-这是您正在寻找的模式

如果您使用的是较低版本,则可以使用“行数”功能:

inner join 
( SELECT 
       inactivationremark,
       createts,  
       row_number() OVER(
       PARTITION BY ir.partnerid ORDER BY ir.createts DESC)  rn
  FROM t_se_internalrating ir
  WHERE ir.ratingstatus = 'Deactivated') 
) ir
 ON ir.partnerid = p1.id AND ir.rn < 2

AND rn<2条件确保只包含最新的额定值。

您可以通过rextester链接提供一些测试数据吗?比如@adamb-你能简化这个问题吗,因为我想不只是我被逻辑和排名系统弄糊涂了,没有一些样本数据。好吧,我会尽我最大的努力现在好点了吗?你用的是什么版本的Oracle?我用的是Oracle11c@adamb请参阅修改后的答案。@adamb行_编号应按ir.partnerid进行分区,修改了答案
inner join 
( SELECT 
       inactivationremark,
       createts,  
       row_number() OVER(
       PARTITION BY ir.partnerid ORDER BY ir.createts DESC)  rn
  FROM t_se_internalrating ir
  WHERE ir.ratingstatus = 'Deactivated') 
) ir
 ON ir.partnerid = p1.id AND ir.rn < 2