【问题标题】:Shouldn't I see multiple inserts right away?我不应该立即看到多个插入吗?
【发布时间】:2013-02-15 01:24:34
【问题描述】:

我正在尝试在 Table2 中插入多行,其中包含来自 Table1 的多列,但是在这样做的同时,我正在编辑进入 Table2 的一些值。两者都是大表(数百万行)。这是查询:

insert into table2 (board_id,title,content,domainurl)
select (id, replace(title, '_', ' '), description, CONCAT("http://somesite.com/", title))
from table1

运行此查询时,插入是否应该立即开始(因为我没有进行连接)?几分钟前我已经开始查询(phpmyadmin 仍然显示“正在加载”),但我没有看到任何行被添加到 table2...?

编辑:查询刚刚停止并显示消息“#1241 - 操作数应包含 1 列”。我不知道那是什么意思!

【问题讨论】:

  • 应该是即时的。您确定查询未仍在运行吗? table1 有多大?

标签: mysql sql phpmyadmin


【解决方案1】:

试试这个:

INSERT INTO table2 (board_id,title,content,domainurl)
SELECT 
  id AS board_id, 
  REPLACE(title, '_', ' ') AS title, 
  description AS content, 
  CONCAT("http://somesite.com/", title) AS domainurl 
FROM table1

【讨论】:

    【解决方案2】:

    根据here,我所要做的就是从 SELECT 子句中删除括号。

    select id, replace(title, '_', ' '), description, CONCAT("http://somesite.com/", title)
    

    完美而快速地工作!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-26
      • 1970-01-01
      • 2022-01-14
      • 2020-10-08
      • 2021-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多