-1

いくつかの列を持つテーブルがあります。PAR_BOOK, PAR_PAGE, PAR_LINE行ごとに、3 つの列 ( ) を選択し、それら 3 つの列の内容を新しい 4 番目の列 (APN) に連結したいと考えています。

したがって、PAR_BOOK=0108、PAR_PAGE=291、PAR_LINE=07 の場合、APN は 010829107 になります。

わかる?

しかし、これを行うためにどのクエリを使用すればよいかわかりません。データをマップするプログラムで作業するには、結果を最終的にcsvとしてエクスポートする必要があるため、結果を同じテーブルに保存する必要があります。

4

2 に答える 2

4

4 番目の列が既にテーブルにあると仮定すると、次の更新クエリを使用します。

UPDATE YourTable
SET APN = CONCAT(PAR_BOOK, PAR_PAGE, PAR_LINE)

4 番目の列がテーブルにまだ存在しない場合は、ALTER TABLEステートメントを実行する前に、ステートメントを使用して追加する必要がありますUPDATE

ALTER TABLE YourTable
ADD APN VARCHAR(256) NULL
于 2012-10-08T18:29:38.197 に答える
0

と同じテーブルに挿入してINSERT INTO ... SELECT ...もまったく問題ありません。MySQL は、選択された行を一時テーブルに保持します。

于 2012-10-08T18:28:46.217 に答える