;WITH tmp(SomeID, OtherID, DataItem, Data) as (
SELECT SomeID, OtherID, LEFT(Data, CHARINDEX(',',Data+',')-1),
STUFF(Data, 1, CHARINDEX(',',Data+','), '')
FROM Testdata
WHERE Data > ''
)
SELECT SomeID, OtherID, Data
FROM tmp
ORDER BY SomeID
с незначительной модификацией вышеприведенного запроса ...
Не нужно использовать Beautiful Soup. Просто проверьте, присутствует ли в тексте <readmore/>
или какая-либо другая подстрока, и разделите на ней, или если она не разделена на новую строку.
from markupsafe import Markup
@app.template_filter()
def snippet(value):
for sep in ('<readmore/>', '<br/>', '<br>', '</p>'):
if sep in value:
break
else:
sep = '\n'
return Markup(value.split(sep, 1)[0])