gpt4 book ai didi

MySql if 条件替换

转载 作者:行者123 更新时间:2023-11-29 12:05:50 25 4
gpt4 key购买 nike

我需要更新数据库中的数千条记录,但不知道如何做一些事情...我已经四处搜索,但找不到像我需要的那样工作的东西。而且我没有太多使用 MySql 和 phpmyadmin 的练习

这是我需要做的事情:

  1. 如果我想更新除以 .gif 结尾的记录之外的所有内容

示例

from
31.example.com/blabla/ciao.jpg
31.example.com/lablar/hello.png
31.example.com/albalb/hallo.gif

to
40.example.com/blabla/ciao.jpg
40.example.com/lablar/hello.png
31.example.com/albalb/hallo.gif -- stays the same
  • 如果我想仅在某些网址/域上将 http:// 替换为 https://

    如果是域名“example”,则将所有 http://替换为 http://:

    40.example.com/blabla/ciao.jpg

    31.example.com/lablar/hello.png

    27.example.com/lablar/hello.png

    18.example.com/lablar/hello.png

    如果域名不是 example.com,请勿更改:

    www.teestdomain.com/lablar/hello.png

    teestdomain.com/lablar/hello.png
  • 对于第二个,我尝试过这个,但显然这会将所有链接上的所有 http 更改为 https

    UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://', 'https://')

    如果 url 具有子域,例如 http://40.example.yourdomains.comhttp://50.example.yourdomains.com

    无法正常工作

    最佳答案

    第一个似乎是这样的:

    update t
    set col = concat('40.example.com/', substr(col, 16))
    where col like '31.example.com/%' and col not like '%.gif';

    第二个不清楚。你说你想替换一些不在字符串中的东西,所以它没有意义。

    我认为您问题的答案是:使用 where 子句来过滤要更新的行。

    关于MySql if 条件替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31504120/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com