1. 程式人生 > >Mysql-兩個表之間複製資料

Mysql-兩個表之間複製資料

想把一個數據庫中表中資料複製到另一個數據庫或者同一個資料庫中可以採取以下方法: 

1.表結構相同的表,且在同一資料庫(如,table1,table2) 

Sql :insert into table1 select * from table2 (完全複製) 

      insert into table1 select distinct * from table2(不復制重複紀錄) 

      insert into table1 select top 5 * from table2 (前五條紀錄) 

2.表不在同一資料庫中(如,db1 table1,db2 table2) 

sql: insert into db1.table1 select * from db2.table2 (完全複製) 


     insert into db1.table1 select distinct * from db2.table2(不復制重複紀錄) 

     insert into tdb1.able1 select top 5 * from   db2.table2 (前五條紀錄) 

先把表建好,在執行語句就ok啦!! 
建表也可以複製的,對於要複製的表,點選3 Info,會出來各種資訊,選擇DDL Information,複製下面的語句到上方Query,記得把資料庫選擇為目標資料庫,執行語句就可以了!! 
記住db1.table1中的.不能省哈!!點輸入多少都可以,但最終都是一個點哦!! 



如果兩個表的結構不一樣,並且想選擇某些項作為插入的物件,可以參考一下語句進行改寫: 

INSERT into db_ds_edu.t_exam_student(stu_id,stu_number,stu_name,school_id,campus_id,grade_id,class_id,xuebu_id) 
  SELECT stu.id 
     , stu.student_num 
    ,person.name 
     , stu.school_id 
     , stu.campus_id 
     , stu.grade_id 
     , stu.clas_id 
     , stu.xuebu_id 
FROM 
  db_ds.t_stu_info AS stu 

    ,db_ds.t_p_person_info as person 
    WHERE stu.person_id = person.id 

即選擇插入到一個數據庫的某個表的某些項,再從目標資料庫的資料表中選擇資料,對應上去就可以了 <script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script> 閱讀(59) | 評論(0) | 轉發(0) | 給主人留下些什麼吧!~~ 評論熱議