0

Table1 から複数の列を持つ複数の行を Table2 に挿入しようとしていますが、その間に 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 列を含める必要があります」というメッセージで停止しました。私はそれが何を意味するのか分かりません!

4

2 に答える 2

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
于 2013-02-28T18:14:35.343 に答える
0

ここ私がしなければならなかったのは、SELECT句から括弧を削除することだけです。

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

完璧かつ迅速に機能しました!

于 2013-02-28T18:18:22.753 に答える