【问题标题】:Insert Into query broken in mysql在mysql中插入查询中断
【发布时间】:2018-10-15 02:43:37
【问题描述】:

我需要运行这种查询。

INSERT INTO `book_newBookOrder` (id, volume, 5, chapterNr, sectionNr, `text`) 
SELECT id, volume, bookNr, chapterNr, sectionNr, `text`
FROM book_oldBookOrder 
WHERE booknr = 1;

INSERT INTO 部分中的固定值 5 会破坏它。 我必须能够指定上面的两个值。

所以我想在 oldbooknr 表中选择 bookNr = 1 的所有内容,并将其作为 booknr 5 存储在 newbookorder 表中。

请给我建议。谢谢。

【问题讨论】:

  • 反之,将 5 放在选择中,将 bookNr 放在插入部分中。
  • 数据类型匹配吗?
  • 我需要从一 (1) 中选择我想要的 bookNr 并将其指定为 (5) 用于新表。

标签: mysql sql insert-into insert-select


【解决方案1】:

您有一个语法错误:INSERT 中第一组括号中的项目应该是字段名称。 “5”不是字段名称,这是您要插入的值(我假设您希望在插入的每一行中将此值设置为相同?)。那应该在 SELECT 中:

INSERT INTO `book_newBookOrder` (id, volume, bookNr, chapterNr, sectionNr, `text`) 
SELECT id, volume, 5, chapterNr, sectionNr, `text`
FROM book_oldBookOrder 
WHERE booknr = 1;

【讨论】:

  • 我不想选5,我想选1在新表里改成5。
  • 对不起各位,我今天有点慢。你是对的,它有效。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-26
  • 2021-01-30
  • 1970-01-01
  • 1970-01-01
  • 2014-04-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多