0

我在 MySql DB 中有 2 个表 A、B。

表 A 有 2 列(用户、通行证)

表 B 有额外的 3 列(user、pass、date1、date2、boolean)

我想从表 A 中复制数据并将其插入到表 B 中,并使用其他列的默认值。实现这一目标的最佳方法是什么?(首选sql)

4

3 回答 3

1

检查这个网址

http://dev.mysql.com/doc/refman/5.1/en/insert-select.html

他们还在下面发布了一个示例,完全符合您在讨论部分中的要求

mysql> INSERT INTO orders (customer_cust_id, orderdatetime, message, taxrate, shippingprice)
    -> SELECT '1', NOW(), null, taxrate, shippingprice FROM customer
    -> WHERE cust_id='1';
    Query OK, 1 row affected (0.01 sec)

希望这可以帮助

于 2012-04-16T08:12:37.083 回答
1

如果表中未定义默认值:

insert into b (user,pass,date1,date2,boolean) 
select user,pass,'2012-04012','2012-04012',true from a

如果表定义包含默认值:

insert into b (user,pass,date1,date2,boolean) 
select user,pass from a
于 2012-04-16T08:15:10.063 回答
0

此插入语句使用 select 子句为插入提供值:

insert into B(user,pass) select user,pass from A;
于 2012-04-16T08:13:11.560 回答