【问题标题】:Wildcard SQL Query to search for specific text & replace通配符 SQL 查询以搜索特定文本并替换
【发布时间】:2020-09-11 16:22:35
【问题描述】:

我正在尝试进行一个非常通配符的 SQL 查询,以跨多个站点(通过 phpMyAdmin)查找特定 URL 并替换它们。

我从以下开始,但它显然不是有效的 SQL 查询:

SELECT * FROM *.* WHERE * LIKE '%https://website.com/er01%'

我实际上是在尝试查看每个数据库、每个表、每个列。一旦我检查了它们,我想创建一个查询以用新的 URL 替换 URL(URL 需要在值的中间替换,因为它们通常在页面内容中)

我是 SQL 的新手,所以它可能是显而易见的,但我无法在网上任何地方找到一种方法来做我想做的事。

【问题讨论】:

    标签: mysql sql phpmyadmin


    【解决方案1】:

    你需要跑

    show databases;
    

    对于每个数据库,运行

    show tables;
    

    对于每个表,运行

    desc <tablename>
    

    对于每一列,运行

    select * from databasename.tablename where columnname like '%https://website.com/er01%';
    

    如果这样做的可能性太多,请考虑生成查询。

    如果您需要所有结果,请考虑合并它们。

    【讨论】:

      猜你喜欢
      • 2020-04-13
      • 2011-07-14
      • 2016-04-05
      • 2012-09-29
      • 2011-06-17
      • 2019-08-12
      • 2011-08-16
      • 2017-01-16
      相关资源
      最近更新 更多