从 MySQL 表的一列中选择多 URL

  • 本文关键字:一列 选择 URL MySQL mysql
  • 更新时间 :
  • 英文 :


>我有一个带有"内容"列的表格存储论坛帖子,"内容"字段的一条记录中有一个或多个URL,我想获取"内容"列中的所有URL,一行一个url,我使用以下代码

select substr(`content`, locate(`content`,"http://"))

它适用于一条记录中的一个 URL,获取类似 URL 的列表

  • http://www.google.com
  • http://www.facebook.com

仅当记录中有多个 URL 时,它才会获取第一个 URL。

如何解决?

另一种看待它的方法是尝试:

SELECT GROUP_CONCAT(substr(`content`, locate(`content`,"http://"))) FROM your_table;

这会将所有 URL 连接到一个字符串并从那里继续 - 也许您可以在代码中拆分它,而不是要求数据库执行此操作。否则,您可以使用整数 1-n 的辅助表进行破解:SQL 拆分逗号分隔行

最新更新