如何在字符串中分隔 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 ...;
这不起作用!
(例如$x
i 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 变量的主要内容,如果未能解决你的问题,请参考以下文章