可能重复:
SQL UPDATE中的str_replace?
如何删除mysql中的部分字符串?
SQL查找和替换字符串的一部分
我有一个网站网址如列表的数据库表http://website.com/,我想删除所有http://,并https://从他们身上.他们是一个简单的SQL语句,我可以在列上运行以删除它吗?
我有一个搜索,但我找不到我需要的东西.我假设我需要使用REPLACE和UPDATE,但我很挣扎.
到目前为止,我有:
UPDATE list
SET website
WHERE website LIKE 'http://%';
Run Code Online (Sandbox Code Playgroud)
那是对的吗?我使用MySQL和表是列表,列的网站,我想删除http://因此喜欢的网址:http://website.com/就像变成:website.com
编辑:是否也可以删除尾部斜杠?
Jer*_*ins 30
看看这个REPLACE功能.您需要使用它两次才能删除http和https.
UPDATE list
SET website = REPLACE(REPLACE(website, 'https://', ''), 'http://', '')
WHERE website like 'https://%'
OR website like 'http://%'
Run Code Online (Sandbox Code Playgroud)
为了处理尾随斜线,您可以使用RIGHT,LEFT和LENGTH功能.
UPDATE list
SET website = LEFT(website, LENGTH(website) - 1)
WHERE RIGHT(website, 1) = '/'
Run Code Online (Sandbox Code Playgroud)
以下是一些您可能会觉得有用的文档: MySQL字符串函数
为什么不直接替换字符串:
UPDATE list
SET website = Replace(website, 'http://', '')
Run Code Online (Sandbox Code Playgroud)
update TABLE_NAME set FIELD_NAME = replace(FIELD_NAME, \xe2\x80\x98find this string\xe2\x80\x99, \xe2\x80\x98replace found string with this string\xe2\x80\x99) where CONDITION\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
50107 次 |
| 最近记录: |