将表2中的数据插入到表1中,新的id以表1中的max开头

时间:2017-10-31 06:21:19

标签: mysql

这是我的问题:下面有两个示例表,我尝试将表二中的数据插入到表一,新ID从四开始。

我尝试更新表格2以更改自动增量,然后插入表格一,但它不起作用。

表1

ID   DESC
1. 1    one
2. 2    two
3. 3    three

表2

ID   DESC
1. 1    four
2. 2    five

代码:

ALTER TABLE Table_2 AUTO_INCREMENT = 4;
insert into table_1(id,desc)value('four','five');

3 个答案:

答案 0 :(得分:3)

仅将desc插入表1

示例:

Insert into table_1(desc)
select desc from table_2

答案 1 :(得分:1)

table_1 id字段是带有主键的自动增量值时,它会向其添加下一个数字。

或者你可以通过这个

来做到这一点
ALTER TABLE table_1 
MODIFY COLUMN 
ID INT auto_increment

所以在查询中,你可以做到

INSERT INTO  table_1(desc)
VALUES ('four') ,('five');

当您创建这样的表时,不会出现这样的问题

CREATE TABLE table_name (
    ID int NOT NULL AUTO_INCREMENT,
    .......
    PRIMARY KEY (ID)
);

答案 2 :(得分:1)

像这样重写你的代码。

ALTER TABLE Table_2 AUTO_INCREMENT = 4;
insert into table_1(desc)values('four'),('five');