我正在尝试将一个表的所有值插入到另一个表中。但是插入语句接受值,但我希望它接受来自initial_Table 的 select * 。这可能吗?
insert 语句实际上有一个语法可以做到这一点。如果您指定列名称而不是选择“*”,那么会容易得多:
INSERT INTO new_table (Foo, Bar, Fizz, Buzz)
SELECT Foo, Bar, Fizz, Buzz
FROM initial_table
-- optionally WHERE ...
我最好澄清这一点,因为出于某种原因,这篇文章得到了一些反对票。
INSERT INTO ... SELECT FROM 语法适用于要插入的表(上面示例中的“new_table”)已存在的情况。正如其他人所说,SELECT ... INTO 语法适用于当您想要创建新表作为命令的一部分时。
您没有指定是否需要在命令中创建新表,因此如果目标表已存在,则 INSERT INTO ... SELECT FROM 应该没问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)