【问题标题】:INSERT INTO with SELECT and exterior value带有 SELECT 和外部值的 INSERT INTO
【发布时间】:2015-12-31 13:25:06
【问题描述】:

我正在尝试将一行从一个表复制到另一个表。但是第二个表必须接收两个额外的参数(小时和自动),它们不在第一个表中。

这是我的尝试:

INSERT INTO Individus_corbeille
  (
    SELECT * 
    FROM Individus 
    WHERE ID_individu='706782','NOW()','autor'
  )

但是绝对不行……

【问题讨论】:

    标签: mysql sql select insert


    【解决方案1】:
    INSERT INTO Individus_corbeille 
    SELECT *, NOW(), 'autor'
    FROM Individus 
    WHERE ID_individu='706782'
    

    但您实际上还应该像这样命名您插入的列和您选择的列

    INSERT INTO Individus_corbeille (col1, col2, col3, col4)
    SELECT col1, col2, NOW(), 'autor'
    FROM Individus 
    WHERE ID_individu='706782'
    

    【讨论】:

    • 而不是NOW() 而不是'NOW()'。也没有在表中指定列并选择它可能是危险的
    • @lad2025 。 . .这似乎合乎逻辑,但 OP 明确地将 now() 放在引号中。
    猜你喜欢
    • 2011-10-25
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-23
    相关资源
    最近更新 更多