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

MySQL зарежда NULL стойности от CSV данни

Това ще направи това, което искате. Той чете четвъртото поле в локална променлива и след това задава действителната стойност на полето на NULL, ако локалната променлива в крайна сметка съдържа празен низ:

LOAD DATA INFILE '/tmp/testdata.txt'
INTO TABLE moo
FIELDS TERMINATED BY ","
LINES TERMINATED BY "\n"
(one, two, three, @vfour, five)
SET four = NULLIF(@vfour,'')
;

Ако всички те са вероятно празни, тогава ще ги прочетете всички в променливи и ще имате няколко оператора SET, като този:

LOAD DATA INFILE '/tmp/testdata.txt'
INTO TABLE moo
FIELDS TERMINATED BY ","
LINES TERMINATED BY "\n"
(@vone, @vtwo, @vthree, @vfour, @vfive)
SET
one = NULLIF(@vone,''),
two = NULLIF(@vtwo,''),
three = NULLIF(@vthree,''),
four = NULLIF(@vfour,'')
;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да експортирате база данни на SQL Server в MySQL?

  2. Използвайте MySQL релационни бази данни на Debian 5 (Lenny)

  3. Запазване на данни на арабски в MySQL база данни

  4. Как да провалите или сринете вашите MySQL екземпляри за тестване

  5. Как работи функцията LOAD_FILE() в MySQL