2017-01-02 80 views
0

我有两个表:复制列到另一个表

CREATE TABLE `dbtest1` (
    `VIDEO_ID` INT(11) NOT NULL, 
    `CHANNEL_ID` INT(11) NOT NULL, 
    `PRICE` INT(11) NOT NULL, 
    PRIMARY KEY (`VIDEO_ID`) 
) 
COLLATE='latin1_swedish_ci' 
ENGINE=InnoDB 
; 

和:

CREATE TABLE `dbtest2` (
     `VIDEO_ID` INT(11) NOT NULL, 
     `WEIGHT` INT(11) NOT NULL, 
     PRIMARY KEY (`VIDEO_ID`) 
    ) 
    COLLATE='latin1_swedish_ci' 
    ENGINE=InnoDB 
    ; 

我想复制的列CHANNEL_ID到dbtest2。

这些表格只是为了演示,我想要做什么。

+0

你的意思是你要创建的dbtest2的CHANNEL_ID列,然后从第一个表将数据复制到了吗? – GurV

+0

是的,这是我的计划,对于dbtest1中的每个条目,在dbtest2中至少存在一个条目 – barracuda317

+0

另外两列呢? VIDEO_ID和WEIGHT的值是从哪里来的?说你会从第一个表VIDEO_ID,但重量? – GurV

回答

0

如果妳想要复制的列类型和数据解决方案是这样的:

ALTER TABLE 'dbtest2' ADD COLUMN 'column1' INT NOT NULL; 

INSERT INTO 'dbtest2' ('column1') 
    SELECT 'dbtest1'.'column1' 
    FROM 'dbtest1'; 
+0

如何确保行的顺序与dbtest1中的顺序完全相同?我正在考虑加入'VIDEO_ID' – barracuda317

+0

GI选择'dbtest1'.Id – Dejan