>  기사  >  데이터 베이스  >  oracle同时向多表插入数据

oracle同时向多表插入数据

WBOY
WBOY원래의
2016-06-07 16:20:181449검색

在Oracle操作过程中经常会碰到同时向多个不同的表插入数据,此时用该语句就非常合适。 All表示非短路运算,即满足了第一个条件也得向下执行查看是否满足其它条件,而First是短路运算找到合适条件就不向下进行。 INSERT ALL WHEN prod_category=B THEN INTO b

oracle同时向多表插入数据

  在Oracle操作过程中经常会碰到同时向多个不同的表插入数据,此时用该语句就非常合适。 All表示非短路运算,即满足了第一个条件也得向下执行查看是否满足其它条件,,而First是短路运算找到合适条件就不向下进行。 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; Merging Rows into a Table

oracle同时向多表插入数据

  MERGE INTO oe.product_information pi

  USING (SELECT product_id, list_price, min_price

  FROM new_prices) NP

  ON (pi.product_id = np.product_id)

  WHEN MATCHED THEN UPDATE SET pi.list_price =np.list_price

  ,pi.min_price = np.min_price

  WHEN NOT MATCHED THEN INSERT (pi.product_id,pi.category_id

  ,pi.list_price,pi.min_price)

  VALUES (np.product_id, 33,np.list_price, np.min_price);

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.