網站首頁 美容小常識 享受生活 東方時尚 識真假 高奢 資訊 遊戲攻略 搞笑段子
當前位置:品位站 > 享受生活 > 心理

oracle中insert語句怎麼嵌入select

欄目: 心理 / 發佈於: / 人氣:1.63W
oracle中insert語句怎麼嵌入select

嵌入方式如下。

INSERT INTO target_table (col1, col2, col3)

SELECT col1

col2

col3

FROM source_table

WHERE condition

其中的select可以使用單表,也可以使用多表,分別舉例説明如下。

1、 select中使用單表查詢

下面了演示如何使用insert into select語句,首先創建一個名為sales的表。

CREATE TABLE sales (

customer_id NUMBER

product_id NUMBER

order_DAte DATE NOT NULL

total NUMBER(9,2) DEFAULT 0 NOT NULL

PRIMARY KEY(customer_id

product_id

order_date)

)

以下語句將orders和order_items表中的銷售摘要插入到sales表中,參考以下實現語句 -

INSERT INTO sales(customer_id, product_id, order_date, total)

SELECT customer_id

product_id

order_date

SUM(quantity * unit_price) amount

FROM orders

INNER JOIN order_items USING(order_id)

WHERE status = 'Shipped'

GROUP BY customer_id

product_id

order_date

2、 select中使用多表查詢

假設只想將2017年的銷售摘要數據複製到新表中。 為此,創建一個名為sales_2017的新表,使用Oracle INSERT INTO SELECT和WHERE子句將2017年的銷售數據複製到sales_2017表中:

INSERT INTO sales_2017

SELECT customer_id

product_id

order_date

SUM(quantity * unit_price) amount

FROM orders

INNER JOIN order_items USING(order_id)

WHERE status = 'Shipped' AND EXTRACT(year from order_date) = 2017

GROUP BY customer_id

product_id

order_date