帮各位大侠出手相救,帮忙处理一下这个问题:有一个表users有如下字段id,uuid,name,creat_by;
比如有如下数据:id uuid name creat_by
1 11aa admin
2 11ab liu 11aa
3 11ac zhang 11aa
4 11ad chen 11ab原来是creat_by跟uuid关联的,现在改成creat_by跟id关联。所以creat_by字段里面的值就要相应的改成id字段的值。比如2对应这条记录的creat_by应该改为1,4对应的这条记录的creat_by要改为2转换后的效果应该如下
id uuid name creat_by
1 11aa admin
2 11ab liu 1
3 11ac zhang 1
4 11ad chen 2这个转换语句该怎么写啊??
比如有如下数据:id uuid name creat_by
1 11aa admin
2 11ab liu 11aa
3 11ac zhang 11aa
4 11ad chen 11ab原来是creat_by跟uuid关联的,现在改成creat_by跟id关联。所以creat_by字段里面的值就要相应的改成id字段的值。比如2对应这条记录的creat_by应该改为1,4对应的这条记录的creat_by要改为2转换后的效果应该如下
id uuid name creat_by
1 11aa admin
2 11ab liu 1
3 11ac zhang 1
4 11ad chen 2这个转换语句该怎么写啊??
from tb a left join tb b on a.creat_by=b.uuid
You have an error in you SQL syntax;check tha manual that corresponds to you MySQL server version for the right syntax to use near 'form users a join users b on a.uuid=b.creat_by at line 1;我知道你的这条语句本身没问题,但不知道为什么在MYSQL里就报错。为什么啊?
数据库执行错误 # 1064。从数据库的响应:
You have an error in you SQL syntax;check tha manual that corresponds to you MySQL server version for the right syntax to use near 'from users a join users b on a.uuid=b.creat_by at line 1;是我在输入错误信息的时候敲错了。我发现自身表关联自身是不可以更新的,包括SQLSERVER,ORACLE.
在SQLSERVE中可以通过如下方式实现:
select * into #users from users
update users set creat_by=#users.id from #users where users.creat_by=#users.uuid但上述语句在MYSQL中不能执行。
所以我想先把数据导入到SQLSERVER后,将数据处理之后,再导回MYSQL中。
但在将SQLSERVER导回到MYSQL时又报了个错。大意是说:不能用insert方式插入blob型数据。我估计是由于数据表中有text类型字段导致。但很奇怪从mysql到sqlserver是不报错,从sqlserver到mysql就报错??
各位大侠看看还有没有办法帮我想想?
谢谢大家。