1 --单表插入
2 /*
3 如果插入表中所有列的值,那么是不需要指定列名的,如果只插入部分列的值,就需要指定列名。
4 好的做法是不管插入什么列,都指定列名
5 */
6 INSERT INTO table_name (col1,col2,col3,...colN) VALUES (value1,value2,value3,...valueN);
7
8 /*
9 使用查询结果插入
10 */
11 INSERT INTO bonus (ename,job,sal)
12 SELECT ename,job,sal FROM emp
13
14 --多表插入
15 /*
16 根据查询结果的不同,插入到不同的表中
17 对于 INSERT ALL 而言,所有的 WHEN 条件都会 判断一遍
18 如果想要当条件满足进行插入后,下面的WHEN就不做判断,就要使用 INSERT FIRST
19 */
20 INSERT ALL
21 WHEN sum_orders < 10000 THEN
22 INTO small_customers
23 WHEN sum_oreders >= 10000 AND sum_orders <= 100000 THEN
24 INTO medium_customers
25 ELSE
26 INTO large_customers
27 SELECT customer_id,sum(order_total) sum_orders FROM orders
28 GROUP BY customer_id