我有一张桌子和一列。该列包含如下数据
<!--:en-->some content<!--:-->
<!--:zh-->概况<!--:-->
<!--:dr-->some content<!--:-->
<!--:cp-->some content<!--:-->
我只对<!--:zh--><!--:-->
. 如何使用 mysql 获取此内容SELECT
尝试这个:
SELECT REPLACE(REPLACE(content, '<!--:zh-->' ,''), '<!--:-->', '')
FROM tableName
WHERE content
LIKE('<!--:zh-->%<!--:-->')
检查此链接SQL Fiddle Demo
I have just answered this in your Question
SET @PRE = '<!--:zh-->', @SUF = '<!--:-->';
SELECT
content,
SUBSTR(
content,
LOCATE( @PRE, content ) + LENGTH( @PRE ),
LOCATE( @SUF, content, LOCATE( @PRE, content ) ) - LOCATE( @PRE, content ) - LENGTH( @PRE )
) langcontent
FROM tab
WHERE content LIKE CONCAT( '%', @PRE, '%', @SUF, '%' );
The desired result is in column langcontent
SELECT column FROM table WHERE column LIKE "<!--:zh-->%<!--:-->"
并解析结果以丢弃 ,