oracle 动态查询问题:如何将值放入作为字符串一部分的变量中

萨钦·瓦迪亚

我需要有关以下场景的动态查询帮助。

我有一个过程 A,其中我将一个字符串存储在一个输出变量中,该变量将传递给过程 B。

过程 B 也接收 tablename 作为输入参数,但过程 A 没有,但是过程 A 也使用 tablename 变量。

我正在考虑如何在过程 A 字符串中使用 tablename 变量,这样当字符串传递给过程 B 时,它的 tablename 输入变量值被分配给过程 A 字符串中的 tablename 变量。

我将尝试用一些代码示例来解释。这是一个示例,没有实际代码。

proc A
begin
--- string that uses tablename but has no variable input for tablename.

mystr:='AND DAY_OF_WEEK_ID IN (SELECT B.DAY_ID FROM DAY_OF_WEEK B 
                                             INNER JOIN CD.' || 'v_tableName' || ' CD
                                             ON TRIM(TO_CHAR(TO_TIMESTAMP(CD.GMT_SEIZ_DT_TIME,''YYYYMMDDHH24MISS''), ''DAY'')) = B.NAME WHERE B.DAY_ID IN (1,7))';

end;

proc B
(v_tablename, mystr)
begin
mystr2:= 'insert into sometable
select ' || mystr || ' from ' || v_tablename
end;

因此 mystr 字符串已经包含 tablename 变量,我希望为其分配与过程 B 的变量 v_table_name 相同的值。

如果我使场景过于复杂,但我找不到更好的方法,我深表歉意。

问候。

装甲运兵车

在过程 B 中,您需要将传递的字符串中的占位符替换为实际的表名。

您发布的伪代码有点乱,但过程 A 生成的字符串中的占位符似乎是'v_tablename',而过程 B 中的实际表名保存在名为v_tablename. 在这种情况下,这对您有用:

mystr := replace(mystr, 'v_tablename', v_tablename);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何选择包含特定子字符串的单词列表作为 SQL 查询 (oracle) 的一部分?

如何在 Oracle 中获取 JSON 字符串的一部分

如何在Oracle中获取跟在特定单词之后的字符串的一部分

Oracle SQL-选择字符串的一部分

如何根据Oracle中另一列的内容删除列中的一部分字符串

如何将字符串的一部分提取到变量中?

将字符串的一部分放入变量中

如何在 Oracle SQL 中查找匹配字符串条件的一部分但不匹配另一个条件的所有条目

如何将查询结果显示为字符串的一部分?

如何将Tkinter变量打印为字符串的一部分?

如何将字符串的一部分捕获到向量中

如何将PChar的一部分提取到字符串中?

如何将字符串的一部分存储到字典中

sql oracle如何知道查询的哪一部分需要很长时间

如何将 Python 字符串变量添加到 Python 中的 SQL 字符串变量的一部分?

如何在作为 Python 列表一部分的字符串中插入字符串变量的值?

将参数作为查询字符串或 url 的一部分传递?

如何将反应状态中的值作为变量包含在 API 调用中作为查询参数的一部分

将json的一部分(当前作为字符串)分配给JavaScript中的变量

如何将变量作为字符串的一部分连接起来(用于文件名)?

将 AJAX GET 响应(以 JSON 格式)的一部分存储到字符串变量中的问题

如何更改变量中存在的路径字符串(作为循环的一部分)?

如何将字符串的一部分更改为 JSX 元素?

如何将字符串的一部分转换为整数?

如何将字符串的一部分转换为斜体?

如何将字符串的一部分提取到chracter?

如何在 Postgres 中合并作为 Concact 字符串一部分的空/空值?

JavaScript:如何将颜色更改为仅输入字段中字符串的一部分?

如何将字符串的一部分从列复制到熊猫的新列中