一行中具有相同定界符的多个值-SUBSTRING_INDEX

时间:2019-01-19 05:27:55

标签: mysql substring

我正在尝试查找并选择每行文本内的所有img属性。 内容包含多个img属性。

例如:

列-内容

<p><img alt="" src="/images/court.jpg" />District Court fined four persons, 
including two senior staffs of Hotel Meghauli Serai, <img alt="" src="/images/staff.jpg" />
over a mishap that electrocuted a rare one-horned` rhino.</p>

我按照以下方式进行操作-找到<img标签并修剪周围仅得到图像名称。

SELECT 
  CASE
    WHEN LOCATE('<img', content) 
    THEN SUBSTRING_INDEX(SUBSTRING_INDEX(content, 'images/','-1'),'\"', '1') 
    ELSE 'default.jpg' 
  END AS img
FROM posts

结果是-

staff.jpg

仅选择了最后一个<img,但是其中有两个<img属性

所以我的要求是(在内容上)带有订单

court.jpg, staff.jpg

如何在每行中用LOCATE选择所有值<img d?我尝试使用GROUP_CONCAT,但后来发现,它是在行之间而不是行内串联的。

SQL Fiddle

0 个答案:

没有答案