mysql - 将数据从一列插入到另一列的末尾,不包括插入的部分

标签 mysql sql database

因此,我试图将一列(网站 URL)中的数据插入另一列(搜索词),而不弄乱已插入列中的数据,因此我希望将数据插入到末尾。但是,我也想删除部分插入的数据。

因此,表名为“listings”,当前表是这样的: enter image description here

我希望表格是这样的: enter image description here

现在,困难在于我不确定如何删除可能的 http://和或 https://(或任何尾部斜杠 (http:test.com/)),我还需要在域,因此“https://dog.com”将像“, dog.com”一样被插入

我知道我可以做到这一点,但剩下的我真的很挣扎。

INSERT INTO listings (search_text) SELECT www FROM listings;

感谢任何帮助。

最佳答案

您需要UPDATE 表,而不是INSERT 新行。
可以用 TRIM() 来完成:

update listings
set search_text = concat(
  search_text,
  ',',
  trim('/' from trim(leading 'http:' from trim(leading 'https:' from www)))  
);

参见 demo .
结果:

| www              | search_text                     |
| ---------------- | ------------------------------- |
| http://test.com/ | address,city,state,zip,test.com |
| https://one.com/ | address,city,state,zip,one.com  |

关于mysql - 将数据从一列插入到另一列的末尾,不包括插入的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55929247/

相关文章:

PHP 表单详细信息不存储在 mysql 中

mysql - Mysql 上的 Varchar 问题 2147483647

mysql - 组合 3 个 MySQL 查询

mysql - SQL Group By -- 自定义聚合函数 : max minus a value that differs in each group

sql - 如何处理postgresql中数组为空的情况?

C 密码数据库

php - MYSQL+PHP 如何在删除表中的行时更新自增id?

mysql - 查询不适用于 md5(id),其中

MySQL:更改唯一键名?

MySQL 只返回数字行