【问题标题】:Why SQL can't add and retrieve at one statement为什么 SQL 不能在一个语句中添加和检索
【发布时间】:2014-02-06 20:19:05
【问题描述】:

我想从一个表中选择它的值,然后在同一个 SQL 语句中我想将这些值插入到另一个表中

SELECT  `DVD_ID`, `dvd_gerne`, `dvd_Director`, `dvd_price`, `dvd_Title`, `photoName` 
FROM `DVDs_Details` WHERE DVD_ID='1' 
AND INSERT INTO `sta177_Rented` VALUES([DVD_ID-1], [dvd_gerne-2], [dvd_Director-3], [dvd_price-4], [dvd_Title-5], [photoName-6]')

【问题讨论】:

    标签: mysql sql insert-update


    【解决方案1】:

    这是通过Insert-With-Select 完成的

    INSERT INTO `sta177_Rented`  (`DVD_ID`, `dvd_gerne`, `dvd_Director`, `dvd_price`, `dvd_Title`, `photoName`)
        SELECT  `DVD_ID`, `dvd_gerne`, `dvd_Director`, `dvd_price`, `dvd_Title`, `photoName` 
        FROM `DVDs_Details` 
        WHERE DVD_ID='1'
    

    【讨论】:

    • 不完全是,但差不多。
    【解决方案2】:

    您还可以像这样指定要插入值的列

    INSERT INTO `sta177_Rented` (`DVD_ID`, `dvd_gerne`, `dvd_Director`, `dvd_price`, `dvd_Title`, `photoName`)
    SELECT  `DVD_ID`, `dvd_gerne`, `dvd_Director`, `dvd_price`, `dvd_Title`, `photoName`
    FROM `DVDs_Details` WHERE DVD_ID='1'
    

    【讨论】:

      【解决方案3】:

      您必须尝试以下类似的方法

      Insert into sta177_Rented
      SELECT  DVD_ID, dvd_gerne, dvd_Director, dvd_price, dvd_Title, photoName FROM 
      DVDs_Details WHERE DVD_ID=1
      

      【讨论】:

      • @KayNelson 感谢您的 cmets,但在这里我们试图互相帮助解决问题,指出语法和英语不是我认为的正确方法。
      • 嗨饶。当您发布错误的语法时,我应该指出它。否则我们有错误的答案。如果您将答案更改为正确的语法,我会赞成。
      猜你喜欢
      • 2018-01-07
      • 1970-01-01
      • 1970-01-01
      • 2022-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-13
      • 2018-05-20
      相关资源
      最近更新 更多