Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试使用mysql/regex重命名行名称_Mysql_Sql - Fatal编程技术网

尝试使用mysql/regex重命名行名称

尝试使用mysql/regex重命名行名称,mysql,sql,Mysql,Sql,我正在尝试使用mysql和可能的regex或replace重命名列中的行? 名称设置如下所示。。。 FL\uSTRONG>Miamidade1026295 我需要他们看起来像这样。。。 佛罗里达州迈阿密戴德市 我想sql语句应该是这样的,但不确定如何执行替换部分 UPDATE tableName WHEN columnName LIKE '%Miamidade%' Would need regex to somehow change only the middle part of the str

我正在尝试使用mysql和可能的regex或replace重命名列中的行? 名称设置如下所示。。。 FL\uSTRONG>Miamidade1026295 我需要他们看起来像这样。。。 佛罗里达州迈阿密戴德市

我想sql语句应该是这样的,但不确定如何执行替换部分

UPDATE tableName WHEN columnName LIKE '%Miamidade%' Would need regex to somehow change only the middle part of the string 更新表名 当列名为“%Miamidade%”时 需要正则表达式以某种方式只更改字符串的中间部分
如果这是您要替换的唯一模式,则只需使用
replace

UPDATE tableName
SET columnName = replace(columnName,'Miamidade','Miami-Dade_')
WHERE columnName LIKE '%Miamidade%' 
如果Miamidade必须区分大小写(意味着Miamidade无效),请根据数据库设置使用区分大小写的排序规则

例如:

或者使用
regexp二进制文件

WHERE columnName REGEXP BINARY 'Miamidade'

如果这是您要替换的唯一模式,则只需使用
replace

UPDATE tableName
SET columnName = replace(columnName,'Miamidade','Miami-Dade_')
WHERE columnName LIKE '%Miamidade%' 
如果Miamidade必须区分大小写(意味着Miamidade无效),请根据数据库设置使用区分大小写的排序规则

例如:

或者使用
regexp二进制文件

WHERE columnName REGEXP BINARY 'Miamidade'

你能以表格的形式提供你的数据和期望的结果吗。它们都是为Miami Dade准备的吗?嗨,我希望sql语句遍历表中第1列的所有行,当它看到“Miamidade”替换为“Miami Dade”时。这个字符串很可能在字符串的中间,比如从:FLYMIADIDAD102695,到:FLU-MIAMI DADEY102695.您可以作为表提供您的数据和期望的结果吗?它们都是为Miami Dade准备的吗?嗨,我希望sql语句遍历表中第1列的所有行,当它看到“Miamidade”替换为“Miami Dade”时。这个字符串很可能在一个字符串的中间,比如从FLYMIADIDAD102695,到:FLYMIAMI DADEY102695:这工作非常完美,谢谢!!出于某种原因,“COLLATE latin1\u general\u cs”抛出了一个错误。但我把它移走了,大写字母就起作用了regardless@WilliamHowley .. 错误是因为默认排序规则的设置不同。在这种情况下,您可以使用
regexp binary
进行区分大小写的匹配。@WilliamHowley。如果答案是正确的,你应该接受。这非常有效,谢谢!!出于某种原因,“COLLATE latin1\u general\u cs”抛出了一个错误。但我把它移走了,大写字母就起作用了regardless@WilliamHowley .. 错误是因为默认排序规则的设置不同。在这种情况下,您可以使用
regexp binary
进行区分大小写的匹配。@WilliamHowley。如果答案正确,你应该接受。