1

wp_postmetaに複数の行を挿入しようとしています。それを達成するための正しいSQLクエリを理解できません。私が直面している問題は、現在のデータが次のようになっていることです。

Col 1  | Col 2  | Col 3  | Col 4  | Col5
----------------------------------------
A      | B      | C      | D      | E
F      | G      | H      | I      | J

そして、私はそれを次のようにwp_postmetaに挿入する必要があります:

Col 1  | Col 2  | Col 3  
-----------------------
A      | txt    | B
A      | txt    | C
A      | txt    | D
A      | txt    | E
F      | txt    | G
F      | txt    | H
F      | txt    | I
F      | txt    | J

「txt」データは問題ではありません。ソースデータの各行を「非正規化」して、他のテーブルの4つの異なる行に格納する方法を見つけようとしています。

4

1 に答える 1

0

列からデータを取得して行に変換するクエリを使用して、データのピボットを解除できます。UNION ALL

select `col 1`, `col 2` as val
from yourtable
union all
select `col 1`, `col 3` as val
from yourtable
union all
select `col 1`, `col 4` as val
from yourtable
union all
select `col 1`, `col5` as val
from yourtable
order by 1

SQL FiddlewithDemoを参照してください。

この形式のデータを取得したら、INSERT別のテーブルにデータを追加できます。

于 2013-02-22T19:34:22.520 に答える