Chinaunix

标题: 新人求助!!!!请问如何把数据自动插入到对应人名下 [打印本页]

作者: t464961268    时间: 2016-05-27 15:37
标题: 新人求助!!!!请问如何把数据自动插入到对应人名下
本帖最后由 t464961268 于 2016-05-27 15:47 编辑

数据如图:

要插入到下面的表中:

(表中人名后已经没有&了)

因为my_star在excel中的顺序与表中顺序是不一样的,如何把excel中数据放到已有的相应的人名下呢?
(数据也有txt格式的备份。)
同时,对于表中没有的人名,则不需要创建新人名把数据插入。
另外,因为数据库表中多为微博昵称,可能是“演员宁理”,而excel中数据是真实人名“宁理”,对于这种情况,能否实现对应的插入呢?
类似“Angelababy”和“杨颖”这种差距太大的就不做考虑了。


希望各位能施以援手!
作者: t464961268    时间: 2016-05-27 15:38
另外表中人名的&忘了去掉。。已经去掉了
作者: cjfeii    时间: 2016-05-27 15:46
如何这两张表中的人名(my_star)是一一对应的,你可以分别对这两张表里面的人名(my_star)进行排序
之后就好处理了。
作者: t464961268    时间: 2016-05-27 15:48
回复 3# cjfeii


    谢谢您的回复!但是请问具体是什么操作呢。。。
作者: cjfeii    时间: 2016-05-27 16:06
写一个程序:
loop (row in file.excl)
{
    update table_name set nbox = row.nbox, nboxrank = row.nboxrank where my_star = row.my_star
}
















作者: cjfeii    时间: 2016-05-27 16:06
my_star = row.my_star
这个可以使用模糊匹配
作者: t464961268    时间: 2016-05-27 16:44
回复 5# cjfeii

好的谢谢您!

   
作者: t464961268    时间: 2016-05-27 17:00
回复 6# cjfeii

不好意思再次请教一个问题,我查阅了一下模糊匹配的方法,比如SELECT * FROM [user] WHERE u_name LIKE '%三%,能够查询所有含“三”的数据,但是这句代码中中“三”需要提前给定。我的数据里需要模糊匹配的很多,一条一条把“%关键字%“列出来很麻烦,有没有 自动匹配而不用把“关键字”给定出来 的方法?
   
作者: cjfeii    时间: 2016-05-27 17:54
你会编程吗?

回复 8# t464961268


   
作者: cjfeii    时间: 2016-05-27 17:57
可以定义变量的

回复 8# t464961268


   
作者: t464961268    时间: 2016-05-27 18:45
回复 9# cjfeii


    刚学。。
作者: action08    时间: 2016-05-27 21:14
写个存储过程就可以了,清凉级别的
作者: cjfeii    时间: 2016-05-29 08:24
试着写一下:
(下面只是伪代码)
loop( row in file)
{
    sql = "update table_name set nbox = " + row.inbox + " nboxrank = " + row.nboxrank + " where my_star like \"%" + row.my_star
    call_mysql(sql)
}


回复 11# t464961268


   
作者: gust    时间: 2016-10-29 04:40
使用vlookup函数




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2