【问题标题】:INSERT INTO SELECT with VALUES插入带有值的选择
【发布时间】:2015-01-02 19:12:38
【问题描述】:

是否可以将INSERT INTO SELECTINSERT INTO VALUES 结合使用?

说我有:

table1
  Id INT
  value1 INT
  value2 INT

table2
  Id INT
  someothervalue INT

现在我想将数据插入到 table1 中:

  • Id 将是 table2 的 ID
  • value1 是一个预定义的值,将始终为 5
  • value2 将设置为 someothervalue

我不能只使用INSERT INTO table1(Id, value1, value2) SELECT Id, someothervalue FROM table2 VALUES(5); 那么有没有一种方法可以同时使用VALUESSELECT 来实现我想要的?

【问题讨论】:

    标签: mysql select insert


    【解决方案1】:

    您可以只使用静态值 5 作为value1,如下所示

    insert into table1 (Id, value1, value2)
    select id, 5, somothervalue 
    from table2
    

    【讨论】:

      【解决方案2】:

      你快到了。只需将常量添加到select 语句:

      INSERT INTO table1 (Id, value1, value2) 
      SELECT Id, 5, someothervalue
      FROM table2;
      

      【讨论】:

      • 是否可以在不使用自动增量的情况下使 5 动态并在每个 INSERT 之后递增?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多