我們經常需要將乙個表的資料插入到另外乙個表,有時還需要指定匯入字段,設定只需要匯入目標表中不存在的記錄,雖然這些都可以在程式中拆分成簡單sql來實現,但是用乙個sql的話,會節省大量**。下面我以mysql資料庫為例分情況一一說明:
1.如果2張表的字段一致,並且希望插入全部資料,可以用這種方法:
insert into 目標表 select * from **表;
insert into inserttest select * from inserttest2;
2.如果只希望匯入指定字段,可以用這種方法:
insert into 目標表 (欄位1, 欄位2, ...) select 欄位1, 欄位2, ... from **表;(這裡的話字段必須保持一致)
insert into inserttest2(id) select id from inserttest2;
3.如果您需要只匯入目標表中不存在的記錄,可以使用這種方法:
複製**
insert into 目標表
(欄位1, 欄位2, ...)
select 欄位1, 欄位2, ...
from **表
where not exists (select * from 目標表
where 目標表.比較字段 = **表.比較字段);
複製**
1>.插入多條記錄:
複製**
insert into inserttest2
(id,name)
select id,name
from inserttest
where not exists (select * from inserttest2
where inserttest2.id=inserttest.id);
複製**
2>.插入一條記錄:
複製**
insert into inserttest
(id, name)
select 100, 'liudehua'
from dual
where not exists (select * from inserttest
where inserttest.id = 100);
複製**
select
t.name,
case t.***
when 1 then
'男'when 2 then
'女'else
'未知'
end) 性別
from
原文:
Mysql 命令歸類
連線mysql mysql uroot padmin hlocalhost 連線mysqladmin命令列客戶端程式 mysqladmin uroot padmin hlocalhost 啟動mysql mysqld 關閉 mysqladmin uroot padmin hlocalhost shu...
mysql常問內容 mysql常問問題
前言 一些自己遇到的問題及理解 需補充修改 索引型別 主鍵索引 普通索引 符合索引 唯一索引 全文索引 索引 查詢資料的資料結構,索引占用磁碟空間,更新資料的時候影響更新表的效率 資料儲存型別 聚簇索引 非聚簇索引 聚簇 採用b 樹的資料結構,聚簇索引葉子節點存放證章表的資料,所以主鍵索引就是用的聚...
mysql檢視mylog命令 mysql常用命令
連線mysql 1.登入mysql資料庫 mysql u使用者名稱 p密碼 示例 2.登入遠端主機的mysql mysql h遠端主機ip位址 u使用者名稱 p密碼 示例 注 建立使用者命令格式為 create user hehe 192.168.93.151 3.退出mysql命令 exit 修改...