技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> MySQL --> Mysql中的导数据脚本

Mysql中的导数据脚本

浏览:2135次  出处信息

     这两天在对线上库进行初始化,需要导大量的数据到线上,使用Mysql的load data很容易实现。

    1.原始数据

    [mysql@DEV_SNS1 mysql]$ more 111.txt

    2263,65025185,1

    2263,61833350,2

    2263,63713789,3

    2263,28344254,4

    2263,13134504,5

    2580,59707749,1

    2580,43,2

    ....

    2.表结构如下

    root@test 10:53:27>desc tmp_dy;

    +-------+---------+------+-----+---------+-------+

    | Field | Type | Null | Key | Default | Extra |

    +-------+---------+------+-----+---------+-------+

    | id1 | int(11) | YES | | NULL | |

    | id2 | int(11) | YES | | NULL | |

    | id3 | int(11) | YES | | NULL | |

    | id4 | int(11) | YES | | NULL | |

    +-------+---------+------+-----+---------+-------+

    3.现在需要将数据导到tmp_dy的表中,同时把id4置为id3+100

    root@test 10:57:37>LOAD DATA INFILE \'/home/mysql/111.txt\'

     -> REPLACE

     -> INTO TABLE test.tmp_dy

     -> FIELDS TERMINATED BY \',\' ENCLOSED BY \'"\' LINES TERMINATED BY \'\\n\'

     -> (id1, id2, id3)

     -> SET id4=id3+100;

    Query OK, 547386 rows affected (7.59 sec)

    Records: 547386 Deleted: 0 Skipped: 0 Warnings: 0

    --语法

    LOAD DATA INFILE \'/home/mysql/111.txt\'

    REPLACE(IGNORE)

    --指定了REPLACE,则输入行会替换原有行(换句话说,与原有行一样,对一个主索引或唯一索引具有相同值的行)

    --指定IGNORE,则把原有行复制到唯一关键字值的输入行被跳过

    INTO TABLE test.tmp_dy

    FIELDS TERMINATED BY \',\' --分隔符

    ENCLOSED BY \'"\'

    LINES TERMINATED BY \'\\n\' --换行符

    (id1, id2, id3) --指定字段

    SET id4=id3; --可以做一些运算,字段初始化的的时候还是不错的。

    其他的语法:

    mysql> LOAD DATA INFILE \'/tmp/test.txt\' INTO TABLE test LINES STARTING BY "xxx";

    使用此语句,您可以读入包含有如下内容的文件:

    xxx"row",1

    something xxx"row",2

    并只得到数据("row",1)和("row",2)。

    IGNORE number LINES选项可以被用于在文件的开始处忽略行。例如,您可以使用IGNORE 1 LINES来跳过一个包含列名称的起始标题行:

    mysql> LOAD DATA INFILE \'/tmp/test.txt\'INTO TABLE test IGNORE 1 LINES;

建议继续学习:

  1. PHP导出MySQL数据到Excel文件    (阅读:2273)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1