mysql 從一個表中查數據并插入另一個表實現方法
不管是在網站開發還是在應用程序開發中,我們經常會碰到需要將MySQL或MS SQLServer某個表的數據批量導入到另一個表的情況,甚至有時還需要指定導入字段。
本文就將以MySQL數據庫為例,介紹如何通過SQL命令行將某個表的所有數據或指定字段的數據,導入到目標表 中。此方法對于SQLServer數據庫,也就是T-SQL來說,同樣適用 。
類別一、 如果兩張張表(導出表和目標表)的字段一致,并且希望插入全部數據,可以用這種方法:
INSERT INTO 目標表 SELECT * FROM 來源表 ;
例如,要將 articles 表插入到 newArticles 表中,則可以通過如下SQL語句實現:
INSERT INTO newArticles SELECT * FROM articles ;
類別二、 如果只希望導入指定字段,可以用這種方法:
INSERT INTO 目標表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 來源表 ;
請注意以上兩表的字段必須一致,否則會出現數據轉換錯誤。
INSERT INTO TPersonnelChange(
UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
ChangeDateS,
InsertDate,
UpdateDate,
SakuseiSyaId
)SELECT
UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
DATE_FORMAT(EmployDate, '%Y%m%d'),
NOW(),
NOW(),
1
FROM
TUserMst WHERE
`Status` = 0
AND QuitFlg = 0
AND UserId > 2
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:- Linux/Mac MySQL忘記密碼怎么辦
- mysql5.7.18解壓版啟動mysql服務
- MySql在Mac上的安裝與配置詳解
- mysql允許所有host訪問的方法
- MySQL分頁分析原理及提高效率
- pycharm中連接mysql數據庫的步驟詳解
- 解決mysql創建數據庫后出現:Access denied for user ''root''@''%'' to database ''xxx''的問題