一个txt文本记录有几百个不重复的值(以回车分开)。
表A中包含name(varchar)字段,遍历表A。
如果发现name(如:'asdf123')包含文本中某个字符串(如:'asdf1')
则把文本上找到的这个值替换掉该行的name。
怎么操作呢?mysql可以读文本吗?

解决方案 »

  1.   

    MYSQl本身不能读文本,可以通过LOAD DATA把文本逐行传到表中,然后MYSQL可以针对表中的记录进行处理。
      

  2.   

    先用load data把这个文本导入到一张表B里面  然后用sql操作
    update A ,B set A.name =B.name where instr(A.name,B.name)>0
      

  3.   

    先用 load data文本导入到一张表B里面,然后load data
    update A,B set A.name=b.name where instr(a.name,b.name)>0;
      

  4.   

    load data 可以保留格式吗? 如果要是查找的内容里有空格之类的咋处理?