एक टेबल बनाएं (Staging
) बहुत सारे कॉलम के साथ। खाली रखें (NULL
) parent_id
. के लिए कॉलम और बच्चों के लिए आईडी।
आशा है कि LOAD DATA
के दौरान 'लघु' लाइनें लापता बच्चों के कॉलम में रिक्त स्थान डाल देंगी ।
INSERT .. SELECT ..
parent
प्राप्त करने के लिए और parent_detail
Parents
. में मेज़। ids
को वापस खींच लें Parents
. से Staging.parent_id
. में . इनके लिए दो SQL का विवरण http://mysql.rjweb.org पर है। /doc.php/staging_table#normalization
अब कॉलम के प्रत्येक संभावित "चाइल्ड" सेट के लिए कुछ ऐसा ही करें:child1
और child1_detail
(संभवतः NULL जोड़ी) और वर्तमान में NULL child1_id
. चाइल्ड 2*, आदि के लिए डिट्टो। ध्यान दें कि Children
. को पॉप्युलेट करते समय तालिका, आपके पास पहले से ही parent_id
है उपलब्ध है।
यह कार्य करने का एक ऑल-एसक्यूएल तरीका है। यह पर्ल/PHP/जावा/वीबी/कार्य करने के लिए जो भी कोड लिखने से थोड़ा कम गन्दा है।