一尘不染

为什么我们必须在“全部插入”之后进行选择?

sql

正如我在许多网站上看到的那样,如果要创建一个INSERT ALL,我必须先添加一个SELECT (Like SELECT * FROM dual;)

为什么?


阅读 122

收藏
2021-05-23

共1个答案

一尘不染

根据INSERT
ALL的语法,子查询是必需的(请参阅http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_9014.htm#i2111652

对于子查询返回的每一行(即SELECT语句)执行insert子句。SELECT * FROM
dual返回单个行,因此insert_clause(s)仅执行一次(这在您要插入一组硬编码的值时很有用)

2021-05-23