【问题标题】:Is there a way to quick insert a row into another table?有没有办法快速将一行插入另一个表?
【发布时间】:2023-03-25 03:15:01
【问题描述】:

我有具有相同列的表 A 和表 B,假设我们有 100 列。我想将表A中的数据插入表B,我有下面的插入语句:INSERT INTO B (column1, column2,....) select column1, column2..., column100 from A.

有没有办法在不列出所有列的情况下插入它?谢谢!

【问题讨论】:

    标签: insert sql-server-2008-r2


    【解决方案1】:

    除非表 B 与表 A 几乎相同,否则列出所有字段是唯一的选择。

    例如如果它们是完全重复的,具有相同的字段和类型,按相同的顺序,那么

    INSERT INTO `B` SELECT * FROM `A` 
    

    就是你所需要的。但是一旦字段之间存在不匹配,那么您就必须弄脏并列出字段。如果 B 的字段与 A 中的名称不同,则尤其如此。

    【讨论】:

    • 我不相信命名部分是真的,但是类型很重要,即使是更小的相同类型(导致截断)也肯定会抛出错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-28
    • 1970-01-01
    • 2021-06-02
    • 2020-08-19
    相关资源
    最近更新 更多