如何使用 PLSQL 动态打印唯一数字
Posted
技术标签:
【中文标题】如何使用 PLSQL 动态打印唯一数字【英文标题】:How to print unique numbers dynamically with PLSQL 【发布时间】:2020-08-04 12:54:35 【问题描述】:我想动态显示唯一编号。我已经尝试了以下代码,但始终显示相同的数字。
DECLARE
a NUMBER;
BEGIN
FOR i IN 1 .. 3 LOOP
DBMS_OUTPUT.PUT_LINE(&a);
END LOOP;
END;
上面的代码会问我三次“a”值,如果我将 1,2,3 作为参数传递,那么它应该显示 1,2,3 但是这段代码将 first(1) 值三次显示为 1 ,1,1。
您能帮我获得所需的输出,例如 1,2,3
【问题讨论】:
【参考方案1】:您无法真正仅在 PL/SQL 中创建交互式程序。当您将 &a
放入 PL/SQL 并在 SQL Developer 之类的工具中运行它时,它会提示您一次输入 a
的值 在它运行代码之前,使用您键入的值而不是替换变量a
。
【讨论】:
【参考方案2】:您想打印i
而不是a
。此外,a
前面的 & 符号表示您将被提示输入 a
的值。
【讨论】:
如果我想打印传递给“a”的 101、505、2000 个值该怎么办 @GaniGanesh 我想恭敬地建议您查看一些 PL/SQL 文档,因为您似乎正在做一些学习练习。在这里试试:docs.oracle.com/database/121/LNPLS/toc.htm.以上是关于如何使用 PLSQL 动态打印唯一数字的主要内容,如果未能解决你的问题,请参考以下文章
使用 Oracle PLSQL 从动态选择的表中合并唯一值的更有效方法