我正在使用一个数据库,其中带有撇号的名字(例如爱尔兰或苏格兰风格的名字,如O'Doherty)用空格而不是撇号存放(例如" O Doherty&#34 ;)
在我的查询中,我想以正确的格式返回名称(仅在此SELECT查询中,而不是实际更改数据),所以我已经使用过:
Replace([snametemp],"O ","O’")
这在理论上是有效的,但我遇到的问题是在字符串中进一步存在模式匹配的地方:例如,"不要使用"将被退回为"不要使用"。
如何编写仅检查字符串前两个字符的Replace语句?
答案 0 :(得分:4)
应该是访问
中的类似内容IIF(snametemp like "O *", Replace([snametemp],"O ","O’"), snametemp)
答案 1 :(得分:1)
我不知道如何在Access中使用此语法。此问题最初发布在 tsql
用例陈述 case...when...then...else...end
case when substring(snametemp,0,2) like "O’" then Replace([snametemp],"O ","O’") else snametemp end as snametemp