Oracle 我面临着限制我的行数的问题
我在这一行“仅获取下两行”上遇到错误。你能解释一下并给我正确的解决办法吗。我只想要从这开始的前两行 错误- 限制2; * 第9行错误: ORA-06550:第9行第5列: PL/SQL:ORA-00933:SQL命令未正确结束 ORA-06550:第3行第5列:Oracle 我面临着限制我的行数的问题,oracle,plsql,Oracle,Plsql,我在这一行“仅获取下两行”上遇到错误。你能解释一下并给我正确的解决办法吗。我只想要从这开始的前两行 错误- 限制2; * 第9行错误: ORA-06550:第9行第5列: PL/SQL:ORA-00933:SQL命令未正确结束 ORA-06550:第3行第5列: PL/SQL:SQL语句被忽略尝试使用WHERE ROWNUM您遇到了什么错误?您运行的是哪个版本的Oracle?错误到底是什么?请现在查看。您似乎不在Oracle 12c版本中,您必须在此处使用ROWNUM概念。 DECLARE
PL/SQL:SQL语句被忽略尝试使用
WHERE ROWNUM您遇到了什么错误?您运行的是哪个版本的Oracle?错误到底是什么?请现在查看。您似乎不在Oracle 12c版本中,您必须在此处使用ROWNUM
概念。
DECLARE
cursor c is
select book.bookid,book.title,publisher.publishername,
author.firstname,author.lastname from book
inner join publisher on
book.publisherid =publisher.publisherid
inner join author on book.author_id=author.authorid
order by book.title
fetch next 2 rows only;
BEGIN
dbms_output.put_line('BOOKID..TITLE..publisher..Author');
for i in c
loop
dbms_output.put_line(i.bookid||'..'||substr(i.title,1,
10)||'..'||i.publishername||'..'||i.firstname||' '||i.lastname);
end loop;
end;
/
DECLARE
CURSOR c IS
SELECT *
FROM ( SELECT book.bookid,
book.title,
publisher.publishername,
author.firstname,
author.lastname
FROM book
INNER JOIN publisher ON book.publisherid = publisher.publisherid
INNER JOIN author ON book.author_id = author.authorid
ORDER BY book.title)
WHERE ROWNUM <= 2;
BEGIN
DBMS_OUTPUT.put_line ('BOOKID..TITLE..publisher..Author');
FOR i IN c
LOOP
DBMS_OUTPUT.put_line (
i.bookid
|| '..'
|| SUBSTR (i.title, 1, 10)
|| '..'
|| i.publishername
|| '..'
|| i.firstname
|| ' '
|| i.lastname);
END LOOP;
END;
/