-1

私たちのデータベースには、エンティティにファイルが追加されることがあるため、fileディスク上のそのファイルの名前を格納する列があるテーブルがいくつかあります。

id      entity_name     file

123     document1       fdjie.txt     (from table documents)
456     employee1       null          (from table employees)
789     building1       sgrfe.txt     (from table buildings)

列が入力されfilesているすべてのエンティティを「コピー」する必要がある新しいテーブルを作成しました。file最終的にfile、すべての元のテーブルから列を削除します。

テーブルには、元のテーブルの列とfilesも必要です。rel_idtable_name

id      table_name      rel_id      entity_name     file

234     documents       123         document1       fdjie.txt
235     buildings       789         building1       sgrfe.txt

'employee1' にはファイルがないため、もちろんそのファイルの挿入はありません。

これどうやってするの?サブセレクトで挿入ステートメントを試しましたが、ループのようなものが必要であることに気付きました。MySQLでこれを行うことはできますか?

4

1 に答える 1