Я впервые взглянул на вставку из нескольких таблиц Oracle (я довольно новичок в SQL в целом), и я не совсем понимаю цель/необходимость для SELECT
в конце инструкции.Синтаксис Oracle Multi-Table Insert?
С одним столом INSERT
, я понимаю, что используется либо подзапрос VALUES
, либо не оба. Может ли кто-нибудь объяснить значение предложения SELECT
в конце этого заявления INSERT
? Я смотрел онлайн, но я не нашел четкого ответа.
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;
читать выбрать первый: выбрать х, у из table1. Для каждой строки, когда x = 'Foo', вставьте в таблицу2, когда x = 'Bar', затем вставьте в таблицу3 и т. Д. ... – tbone