2011-03-29 169 views
0

我正在玩在Ubuntu中运行的MySQL。我有property表中的示例数据。 name列中的名称是包含引号的字符串。为了选择他们,我要运行是这样的:有没有办法执行基于单元格内容更新的SQL更新语句

select * from property 
where name = '"john"' 

结果表明"john"

有一个简单的方法来消除所有从所有的名字引号?

有没有办法删除列中每个字符串中的第三个字符?

是否可以用另一个字符替换列中某个字符的每个实例?例如,如果詹姆斯,简和杰弗里的名字出现在列中,那么用e替换e就会产生Jamos,Jano和Joffroy。

+0

有没有办法判断它是否是功课? – Quassnoi 2011-03-29 09:43:12

+0

@Quassnoi它不是功课。实际上,我现在正处于休息时间之间。不用着急。如果您担心这是作业,您可以等待几个星期来回答,以确保迟到作业。 – 2011-03-29 09:46:10

+0

没关系,只是认为把家庭作业标记为“家庭作业”是一种很好的语调。 – Quassnoi 2011-03-29 09:47:14

回答

3
update property 
set name = replace(name,'"',''); 

update property 
set name = replace(name,SUBSTRING (name , 3 ,1),''); 

update property 
set name = replace(name,'a','o'); 
+0

感谢您的回复。他们不幸为我工作。我得到这个错误:'1064你的SQL语法有错误;请检查与您的MySQL服务器版本相对应的手册,以便在第1行附近使用正确的语法。 – 2011-03-29 09:57:12

+0

谢谢!不知道是什么让它第二次运行,我必须有一个错字。 – 2011-03-29 10:12:43