Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.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
将行号分配给通过PL-SQL存储过程检索的一组结果_Sql_Plsql - Fatal编程技术网

将行号分配给通过PL-SQL存储过程检索的一组结果

将行号分配给通过PL-SQL存储过程检索的一组结果,sql,plsql,Sql,Plsql,我有一个存储过程,它执行许多select语句,并使用联合连接结果,例如 OPEN myItems FOR SELECT column1, columns2 ... FROM table1 WHERE myCondition UNION SELECT column1, column2 ... FROM table2 WHERE myCondition UNION SELECT column1, column 2.... END 等等 我需要能够唯一地标识返回的数据,

我有一个存储过程,它执行许多select语句,并使用
联合
连接结果,例如

OPEN myItems FOR
   SELECT column1, columns2 ... FROM table1 WHERE myCondition
   UNION
   SELECT column1, column2 ... FROM table2 WHERE myCondition
   UNION
   SELECT column1, column 2....
END
等等

我需要能够唯一地标识返回的数据,因此我希望能够为返回的行分配一个行号

我想有一个简单的方法可以做到这一点,但不幸的是,我一直没有找到它


谢谢

排号有什么问题?我遇到过这个问题,但我不知道如何在我的情况下使用它,或者它是如何工作的。
SELECT ROW_NUMBER() OVER (ORDER BY column1) AS row_num, t.* 
FROM (
   SELECT column1, columns2 ... FROM table1 WHERE myCondition
   UNION
   SELECT column1, column2 ... FROM table2 WHERE myCondition
   UNION
   SELECT column1, column 2.... 
) t;