Vytvořte tabulku (Staging
) se spoustou sloupců. Má prázdné (NULL
) pro parent_id
a ID pro děti.
Doufám, že 'krátké' řádky vloží null do chybějících dětských sloupců během LOAD DATA
.
INSERT .. SELECT ..
získat parent
a parent_detail
do Parents
stůl. Stáhněte ids
od Parents
do Staging.parent_id
. Podrobnosti o dvou SQL pro tyto jsou v http://mysql.rjweb.org /doc.php/staging_table#normalization
Nyní proveďte něco podobného pro každou možnou "podřízenou" sadu sloupců:child1
a child1_detail
(možná NULL pár) a aktuálně NULL child1_id
. Stejně jako pro dítě2* atd. Všimněte si, že při vyplňování Children
parent_id
již máte k dispozici.
Toto je all-SQL způsob provádění úkolu. Je to jen o něco méně chaotické než psaní kódu pro Perl/PHP/Java/VB/jakýkoli pro provedení úkolu.