使用替换查询将“和”替换为mysql中的“和”

时间:2014-09-01 00:24:52

标签: mysql sql

我在mysql中使用以下查询:

update TABLENAME set columnname = replace(columnname, 'And', 'and');

目的是替换And with和(" A"应该是小写的)。问题是它无法找到"和"在数据库中,但如果我使用"%和%"那么它就可以找到它和许多其他属于一个词或甚至已经小写的那些。

2 个答案:

答案 0 :(得分:1)

因为你只想替换'和'的整个单词,所以它们都有前导和尾随空格(除非有人有一些不好的标点符号,比如'和')。所以在搜索中包含那些空格 - 即

update TABLENAME set columnname = replace(columnname, ' And ', ' and ');

SQL小提琴显示您的结果。 http://sqlfiddle.com/#!3/3f8fa/1

答案 1 :(得分:0)

替换功能是敏感。因此

update TABLENAME set columnname = replace(columnname, 'And', 'and');
如果没有列名完全符合'

,则

可能不会更新任何行。在它。

相反,

LIKE不敏感的,因此

SELECT columnname FROM tablename WHERE columnname LIKE '%And%';

可能会返回结果,在列名中包含'和','和',' AND',...。