在运行 MySql 5.0.27 的服务器上,使用 REPLACE 进行非常简单的查询——
SELECT familyname, replace('{0} test' , '{0}', `familyname`) AS `formattedname`
FROM family
我得到的结果是第二列只被评估过一次:
familyname formattedname
Andersen Andersen test
Baker Andersen test
Charles Andersen test
在运行 MySql 5.5.9 的开发机器上,相同的查询和数据,结果如我所料:
Andersen Andersen test
Baker Baker test
Charles Charles test
这是旧版本中的 MySql 错误,还是存在其他可能性(服务器配置错误、索引错误等?)。
谢谢!