我目前正在将我的网站迁移到其他平台。在我的数据库中,我有一个名为excerpt
的列,它应该只包含我博客文章中的介绍文本。迁移我的数据库后,我发现我的excerpt
列和我的content
列是相同的重复值。基本架构如下所示:
--------------------------------------------------------------------------
id | title | excerpt | content |
--------------------------------------------------------------------------
1 | This post. |<p>Text I want.</p><p>Text I don't want.</p> |<p>Text..|
2 | That post. |<p>Text I want.</p><p>Text I don't want.</p> |<p>Text..|
3 | Next post. |<p>Text I want.</p><p>Text I don't want.</p> |<p>Text..|
4 | What post? |<p>Text I want.</p><p>Text I don't want.</p> |<p>Text..|
5 | Whose post? |<p>Text I want.</p><p>Text I don't want.</p> |<p>Text..|
--------------------------------------------------------------------------
我想知道的是,在excerpt
列中,如何在第一次</p>
出现后删除所有内容?我在过去几天一直在寻找解决方案,我唯一遇到的是SQL中的REGEXP,但我仍然是编写查询命令的新手。
非常感谢任何帮助。谢谢大家!
答案 0 :(得分:0)
试试这个:
select
excerpt,
substring(excerpt, 0, locate('</p>', excerpt) + char_length('</p>'))
from
your_table
修改强>
select
excerpt,
substring_index(excerpt, '</p>', 1)
from
your_table