0

テーブルと列があります。列には以下のようなデータが含まれています

<!--:en-->some content<!--:-->
<!--:zh-->概况<!--:-->
<!--:dr-->some content<!--:-->
<!--:cp-->some content<!--:-->

の間の内容だけに興味があります<!--:zh--><!--:-->。mysql を使用してこのコンテンツを取得するにはどうすればよいですかSELECT

4

3 に答える 3

0

私はあなたの質問でこれに答えました

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, '%' );

望ましい結果は列langcontentにあります

SQLフィドルデモ

于 2012-12-13T20:38:48.323 に答える
0
SELECT column FROM table WHERE column LIKE "<!--:zh-->%<!--:-->"

結果を解析して、

于 2012-11-21T09:23:18.997 に答える