sqlite3 insert intoで別テーブルのデータからデータを挿入する

環境
Windows 10 Home 64bit
SQLite 3.39.2

書式
INSERT INTO テーブル名 select文;
別テーブルのデータからデータを挿入するには、「insert into」で「select文」を使用します。

操作方法
1.テーブルを作成します
テーブルcfta_tblを作成します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE cfta_tbl(tid integer, tname text);
CREATE TABLE cfta_tbl(tid integer, tname text);
CREATE TABLE cfta_tbl(tid integer, tname text);

テーブルcftb_tblを作成します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE cftb_tbl(tid integer, tname text);
CREATE TABLE cftb_tbl(tid integer, tname text);
CREATE TABLE cftb_tbl(tid integer, tname text);

2.データを挿入します
テーブルcfta_tblにデータを挿入します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
insert into cfta_tbl values(11,'tokyo');
insert into cfta_tbl values(12,'oosaka');
insert into cfta_tbl values(13,'fukuoka');
insert into cfta_tbl values(11,'tokyo'); insert into cfta_tbl values(12,'oosaka'); insert into cfta_tbl values(13,'fukuoka');
insert into cfta_tbl values(11,'tokyo');
insert into cfta_tbl values(12,'oosaka');
insert into cfta_tbl values(13,'fukuoka');

結果を検索します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sqlite> select * from cfta_tbl;
12|oosaka
11|tokyo
13|fukuoka
sqlite> select * from cfta_tbl; 12|oosaka 11|tokyo 13|fukuoka
sqlite> select * from cfta_tbl;
12|oosaka
11|tokyo
13|fukuoka

3.テーブルcftb_tblにテーブルcfta_tblのデータからデータを挿入します
sqlite> insert into cftb_tbl select * from cfta_tbl where tid >11 ;
結果を確認します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sqlite> select * from cftb_tbl;
12|oosaka
13|fukuoka
12|oosaka
13|fukuoka
sqlite> select * from cftb_tbl; 12|oosaka 13|fukuoka 12|oosaka 13|fukuoka
sqlite> select * from cftb_tbl;
12|oosaka
13|fukuoka
12|oosaka
13|fukuoka

 

SQLite

Posted by arkgame