如何在字符串中分隔 SQL 变量

Posted

技术标签:

【中文标题】如何在字符串中分隔 SQL 变量【英文标题】:How to separate SQL variable inside a string 【发布时间】:2020-10-15 23:26:52 【问题描述】:

在我的 SQL 脚本中,我可以定义如下变量:

DEFINE x=100;

并像这样使用它:

CREATE TABLE A&x AS ...;

结果将是CREATE TABLE A100 AS ...(连接字符串)。

但我想在类似查询(B 后缀)中得到CREATE TABLE A100B AS ...

CREATE TABLE A&xB AS ...;

但是 Oracle/SQL 知道有 xB 变量

如何在 SQL 中分隔变量(名称):

CREATE TABLE A&xB AS ...;

这不起作用!

(例如$xi php

【问题讨论】:

【参考方案1】:

它只是一个很小的

SQL> define x=100
SQL> create table a&x.b as select * from dual;
old   1: create table a&x.b as select * from dual
new   1: create table a100b as select * from dual

Table created.

SQL> select * from a100b;

D
-
X

SQL>

这里,如果你错过了:

create table a&x.b
                ^
                |
               here

有什么意义? SQLPlus 连接字符。默认情况下,它是一个点。它告诉 SQLPlus 变量名的结束位置。


如果您需要更多帮助:

SQL> help set

 SET
 ---

 Sets a system variable to alter the SQL*Plus environment settings
 for your current session. For example, to:
     -   set the display width for data
     -   customize html formatting
     -   enable or disable printing of column headings
     -   set the number of lines per page

 SET system_variable value

 where system_variable and value represent one of the following clauses:

   APPI[NFO]OFF|ON|text                   NEWP[AGE] 1|n|NONE
   ARRAY[SIZE] 15|n                       NULL text
   AUTO[COMMIT] OFF|ON|IMM[EDIATE]|n      NUMF[ORMAT] format
   <snip>
   ---------------------
   CON[CAT] .|c|ON|OFF                      [FOR[MAT]  WRA[PPED] |
   ---------------------
   Here it is!

【讨论】:

那是因为 OP 和我住在同一个国家,所以我更了解他们,@GMB :) 哈,哈,本地理解。扎瓦朱杰姆。 Pivica uvijek može kad si za. Nema na čemu, dogovoreno :)

以上是关于如何在字符串中分隔 SQL 变量的主要内容,如果未能解决你的问题,请参考以下文章

如何在cfmail中分隔多个电子邮件地址

如何更改字符串中分隔两种货币的逗号?

如何在ios中分隔数组

如何在 React 中分隔输入字段值?

如何存储一个' | '使用 perl 在哈希中分隔假脱机文件

如何在 Pandas 中分隔列名及其值?