0
行を複製して、新しい値で同じテーブルに挿入したいとします。問題は、私のテーブルには、私のクエリはちょっと間抜けに見えるように、約50の列を持っていることである。いくつかの変更を加えて行を複製して挿入する
insert into DUMBTABLE (
, Col1
, Col2
, Col3
-- 47 rows to go...
.
.
, Col50) select 'new_val1'
,'new_val2'
, Col3
-- 47 rows to go again...
.
.
.
, Col50 from DUMBTABLE where Col1 = 'old_val'
動的にすべての列を取得し、ものを新しい値で更新されますwhice指定できるようにする良い方法はありますか?ありがとう
Ps:php
でこのクエリを実行します。ストアドプロシージャは現時点ではオプションではありません。
これは道のりです。 (どのように他の人がどの列を置き換えるか知っているかもしれませんか?)しかし、主な質問は、あなたのテーブルに50列がある理由です。データベースが貧弱に設計されていますか? – jarlh
@jarlhはいDBはうまく設計されておらず、私はそれについて何もできません:( – RidRoid
もしあなたがストアドを使うことができたなら、動的なSQLをビルドして、コピー/修正。プレーンなSQLでは、 – Aleksej