Mysql
 sql >> база данни >  >> RDS >> Mysql

как да вмъкна файл с разделители на табулатори в mysql с релация

Създайте таблица (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 . Същото за child2* и т.н. Имайте предвид, че когато попълвате Children таблица, вече имате parent_id наличен.

Това е изцяло SQL начин за изпълнение на задачата. Това е само малко по-малко разхвърляно от писането на Perl/PHP/Java/VB/какъвто и да е код за изпълнение на задачата.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Защо PDO_MySQL не върне цяло число?

  2. Качване на файл с jQuery и CodeIgniter (но без опресняване на страницата)

  3. трябва да преместите данни от едно поле в друго, в рамките на една и съща таблица

  4. Как да кача изображение на localhost сървър, докато пътят се съхранява в базата данни на mysql?

  5. mysql SELECT IF оператор с ИЛИ