Jimmy Chen

A Programmer

插入SQL数据练习

第二部分 插入数据

Practice 1

  编写一条SQL语句,用你自己的值插入一条记录到countries表的相应列中。countries表格的数据结构如下:

《插入SQL数据练习》

首先通过下面的语句创建countries表

DROP TABLE IF EXISTS countries;
CREATE TABLE IF NOT EXISTS countries (
    country_id VARCHAR(2) ,
    country_name VARCHAR(40),
    region_id DECIMAL(10, 0)
);

然后数据的插入目前博主了解的有两种方法啦,方法一如下,直接按照对应的列将数据插入:

INSERT INTO countries VALUES ('CN', 'China', 12345);

另一种放法就是在插入的时候指定列名,然后插入的数据与之对应即可:

INSERT INTO countries(region_id, country_id, country_name) VALUES (54321, 'CN', 'China');

Practice 2

  编写一条SQL语句,插入一行包含country_id和country_name列的数据

这里既然要指定插入的列,那使用Practice 1中的方法二就很容易做到了,语句如下:

INSERT INTO countries(country_id, country_name) VALUES ('CN', 'China');

Practice 3

  编写一个SQL语句,以创建包含countries表中的所有数据和表结构的副本country_new表

CREATE TABLE IF NOT EXISTS country_new AS SELECT * FROM countries;

Practice 4

  编写一条SQL语句,往countries表中插入数据,其中region_id列为NULL

INSERT INTO countries (country_id, country_name, region_id) VALUES ('CN', 'China', NULL);

Practice 5

  在一条SQL语句中插入三行数据到countries表中

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表的数据都删除掉:

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:

TRUNCATE TABLE countries;
INSERT INTO countries (country_id, country_name, region_id)
    SELECT country_id, country_name, region_id FROM country_new;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d 博主赞过: