Mysql SQL更新没有www的网址

标签 mysql sql

我有一百万行,其中大多数开始

'http://www.' or 'https://www.'

但有时它们的开头没有“www”。 - 这可能是正确的,但网站所有者希望整个数据保持一致,因此我需要更新表格以始终包含“www”。

我正在努力使用 SQL 来执行此操作。我试过:

select * from the_million where URL like 'http://[!w]'

但这会返回 0 条记录,所以我遇到了构建 SQL 的第一个障碍。我想在获得我想要的记录后,我会进行替换。

我很乐意为每个 http 和 https 分两次运行它,所以不需要任何花哨的东西。

最佳答案

你可以试试这个查询:

UPDATE the_million SET url=REPLACE(url, 'http://', 'http://www.')
WHERE url NOT LIKE 'http://www.%' AND url NOT LIKE 'https://www.%'

UPDATE the_million SET url=REPLACE(url, 'https://', 'https://www.')
WHERE url NOT LIKE 'http://www.%' AND url NOT LIKE 'https://www.%'

在 2 个查询中搜索和替换。

关于Mysql SQL更新没有www的网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20609136/

相关文章:

SQL Server 2008 - 将另一列的默认值绑定(bind)到主键

mysql - 使用条件列表的任何子集查询数据库

java - android 中的 SQL 数据库,请求索引 -1,大小为 0

php - 向 mysql 循环添加更多条件

php - 我可以在 PHP 中混合使用 MySQL API 吗?

php - Select date and set it in other language-multiple queries in single mysql statement in PHP in single mysql statement 多查询

mysql - 选择并统计过去 30 天的所有订单

mysql - 如何从mysql中选择字段的增量

php - mysql如何将同一个表的一个字段的数据复制到另一个字段

sql - 给每个group id设置group的最大值