Laz*_*zer 5 oracle subquery database-internals
例如
SQL> create table dates(d date);
Table created.
SQL> insert into dates select sysdate from dual;
1 row created.
SQL> select * from dates;
D
---------
28-MAY-11
SQL> insert into dates (d) values (select sysdate fom dual);
insert into dates (d) values (select sysdate fom dual)
*
ERROR at line 1:
ORA-00936: missing expression
SQL>
Run Code Online (Sandbox Code Playgroud)
如果要使用仅允许单个值的 SELECT 语句,则需要将该 SELECT 语句放入括号中:
insert into dates (d)
values
( (select sysdate from dual) )
Run Code Online (Sandbox Code Playgroud)
这可以扩展为多列:
insert into dates
(
id,
d,
other_column
)
values
(
some_sequence.nextval,
(select sysdate from dual),
(select max(some_col) from other_table)
)
Run Code Online (Sandbox Code Playgroud)
您只需要确保 SELECT 只返回一行和一列
| 归档时间: |
|
| 查看次数: |
1777 次 |
| 最近记录: |