-1

次の表があります。

次の表があります。

Patent      AssigneeName                        AssigneeUnparsed
-------     --------------                      ---------------
D452605     Louis Vuitton Malletier, S.A.       Paris_None_FR
D452606     Nike, Inc.                          Beaverton_OR_US
D452607     Salomon S.A.; First Technology      Metz-Tessy_None_FR

担当者名フィールドに 2 つの担当者名があり、それらが ; で区切られている場合があります。

MySQL を通過させ、それが発生したときにそれらを分離し、新しいレコードの他のフィールドからのすべてのデータを繰り返す方法はありますか?

4

1 に答える 1

0

最大 2 つの担当者名を指定できる場合は、次のように、INSERT クエリを使用してから、SUBSTRING_INDEXを使用する UPDATE クエリを使用します。

INSERT INTO yourtable
SELECT Patent, TRIM(SUBSTRING_INDEX(AssigneeName, ';', -1)), AssigneeUnparsed
FROM yourtable
WHERE AssigneeName LIKE '%;%';

UPDATE yourtable
SET AssigneeName = TRIM(SUBSTRING_INDEX(AssigneeName, ';', -1))
WHERE AssigneeName LIKE '%;%';

ここでフィドルを参照してください。

于 2013-04-10T14:04:31.033 に答える