第二部分 插入数据
Practice 1
编写一条SQL语句,用你自己的值插入一条记录到countries表的相应列中。countries表格的数据结构如下:
首先通过下面的语句创建countries表
1 2 3 4 5 6 |
DROP TABLE IF EXISTS countries; CREATE TABLE IF NOT EXISTS countries ( country_id VARCHAR(2) , country_name VARCHAR(40), region_id DECIMAL(10, 0) ); |
然后数据的插入目前博主了解的有两种方法啦,方法一如下,直接按照对应的列将数据插入:
1 |
INSERT INTO countries VALUES ('CN', 'China', 12345); |
另一种放法就是在插入的时候指定列名,然后插入的数据与之对应即可:
1 |
INSERT INTO countries(region_id, country_id, country_name) VALUES (54321, 'CN', 'China'); |
Practice 2
编写一条SQL语句,插入一行包含country_id和country_name列的数据
这里既然要指定插入的列,那使用Practice 1中的方法二就很容易做到了,语句如下:
1 |
INSERT INTO countries(country_id, country_name) VALUES ('CN', 'China'); |
Practice 3
编写一个SQL语句,以创建包含countries表中的所有数据和表结构的副本country_new表
1 |
CREATE TABLE IF NOT EXISTS country_new AS SELECT * FROM countries; |
Practice 4
编写一条SQL语句,往countries表中插入数据,其中region_id列为NULL
1 |
INSERT INTO countries (country_id, country_name, region_id) VALUES ('CN', 'China', NULL); |
Practice 5
在一条SQL语句中插入三行数据到countries表中
1 2 |
INSERT INTO countries (country_id, country_name, region_id) VALUES ('CN', 'China', 510000), ('CN', 'China', 510001), ('CN', 'China', 510002); |
Practice 6
编写一条SQL语句,抽取country_new中的数据插入到countries中
首先我们需要使用下面的语句插入三行语句到country_new表中,插入前我们使用TRUNCATE TABLE将country_new表的数据都删除掉:
1 2 3 |
TRUNCATE TABLE country_new; INSERT INTO country_new (country_id, country_name, region_id) VALUES ('CN', 'China', 510000), ('CN', 'China', 510001), ('CN', 'China', 510002); |
因为在Practice 5中我们有插入一样的数据,所以我们先将countries表中的数据都清除掉,然后再讲数据冲country_new中拷贝到countries:
1 2 3 |
TRUNCATE TABLE countries; INSERT INTO countries (country_id, country_name, region_id) SELECT country_id, country_name, region_id FROM country_new; |