如何使用 select * from table
将记录插入到另一个表并添加其他数据?
table_a
列:id, nametable_b
列:id, name, email, phone
我的查询:
INSERT INTO `table_b`
SELECT *
FROM `table_a`
WHERE `id` = '1' + additional data
我找到了答案 查询:
INSERT INTO `table_b`
SELECT a.*, 'email@email.com','1234'
FROM table_a a
WHERE `id`='2'
谢谢
最佳答案
您可以只向 SELECT
语句添加常量,例如
INSERT INTO table_b (id, name, email, phone)
SELECT id, name, 'jon.skeet@google.com', '867-5309'
FROM table_a
WHERE id = 1;
请注意,我明确列出了 table_b
和 table_a
中的所有列。虽然并非绝对需要这样做,但它使您的代码更易于阅读、更易于维护,并最大限度地减少以后出错的可能性。
关于mysql - 使用带有附加列的表中的 SELECT * 插入 INTO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49423237/