我第一次了解 Oracle 的多表插入(总体来说我对 SQL 相当陌生),并且我不太了解 SELECT
的目的/需求声明结束。
对于单表 INSERT,我的理解是使用 VALUES
子句或子查询,但不能同时使用两者。有人可以解释此 INSERT
语句末尾的 SELECT
子句的重要性吗?我上网查了一下,没有找到明确的答案。
INSERT ALL
WHEN prod_category='B' THEN
INTO book_sales(prod_id,cust_id,qty_sold,amt_sold)
VALUES(product_id,customer_id,sale_qty,sale_price)
WHEN prod_category='V' THEN
INTO video_sales(prod_id,cust_id,qty_sold,amt_sold)
VALUES(product_id,customer_id,sale_qty,sale_price)
WHEN prod_category='A' THEN
INTO audio_sales(prod_id,cust_id,qty_sold,amt_sold)
VALUES(product_id,customer_id,sale_qty,sale_price)
SELECT prod_category ,product_id ,customer_id ,sale_qty, sale_price
FROM sales_detail;
最佳答案
选择用于确定 WHEN prod_category='B' THEN
中使用的变量 prod_category 的值
关于sql - Oracle 多表插入语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21817181/