需要重新编号的结果集,例如:
String mainWindowHandle = Driver.CurrentWindowHandle.ToString();
ReusableFuncPage.GetTxtfirstname().SendKeys(Keys.Enter);
Driver.SwitchTo().Window(mainWindowHandle);
问题是:有保证,oracle总会按顺序返回结果吗? :
CREATE OR REPLACE TYPE nums_list IS TABLE OF NUMBER;
CREATE OR REPLACE FUNCTION generate_series(from_n INTEGER, to_n INTEGER, cycle_max INTEGER)
RETURN nums_list PIPELINED AS
cycle_iteration INTEGER := from_n;
BEGIN
FOR i IN from_n..to_n LOOP
PIPE ROW( cycle_iteration );
cycle_iteration := cycle_iteration + 1;
IF cycle_iteration > cycle_max THEN
cycle_iteration := from_n;
END IF;
END LOOP;
RETURN;
END;
SELECT * FROM TABLE(generate_series(1,10,3));
或者有时结果可能意外排序,如下:
1
2
3
1
2
3
1
2
3
1
答案 0 :(得分:1)
Pipelining 通过管道行来消除构建大型集合的需要 在创建它们之外的功能,节省内存和允许 后续处理在生成所有行之前开始
这意味着,它将在完全获取之前开始处理行,这就是您看到不可预测的顺序的原因。