Mysql
 sql >> Baza danych >  >> RDS >> Mysql

jak wstawić plik rozdzielany tabulatorami do mysql z relacją

Utwórz tabelę (Staging ) z dużą ilością kolumn. Mieć puste (NULL ) kolumny dla parent_id i identyfikatory dla dzieci.

Mam nadzieję, że „krótkie” wiersze wstawią wartości null w brakujących kolumnach podrzędnych podczas LOAD DATA .

INSERT .. SELECT .. aby uzyskać parent i parent_detail do Parents stół. Wycofaj ids od Parents w Staging.parent_id . Szczegółowe informacje na temat dwóch SQL dla nich znajdują się w http://mysql.rjweb.org /doc.php/staging_table#normalizacja

Teraz zrób coś podobnego dla każdego możliwego zestawu kolumn „podrzędnych”:child1 i child1_detail (prawdopodobnie para NULL) i obecnie NULL child1_id . To samo dla child2*, itp. Pamiętaj, że podczas wypełniania Children tabela, masz już parent_id dostępne.

To jest całkowicie SQL sposób wykonania zadania. Jest tylko trochę mniej kłopotliwy niż pisanie kodu w Perlu/PHP/Java/VB/wszelkim innym celu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak mogę połączyć zestaw wyników w MySQL?

  2. mysql nie jest włączony w phpinfo() php 5.3.1

  3. Jak zrobić tabelę mysql z kolumnami daty i czasu?

  4. Doktryna - Jak wydrukować prawdziwy sql, a nie tylko przygotowane oświadczenie?

  5. Odległość przestrzenna Mysql za pomocą POINT - Nie działa