2

MySQL では、大きなテキストを含むテーブルをクエリするときに

SELECT textcol FROM manytexts WHERE textcol LIKE "%interesting % bit%";

textcol で一致するビットのみを取得するにはどうすればよいですか?

例: から

「何とか何とか何とか面白い緑のビット何とか何とか何とか」

期待される結果:

「興味深い緑のビット」

ありがとう!

4

1 に答える 1

2

おそらく別の方法がありますが、、、およびを使用SUBSTRできINSTRますLENGTH

SELECT SUBSTR(field, 1, INSTR(field, 'bit') + LENGTH('bit') - 1)
FROM (
  SELECT SUBSTR(YourField, INSTR(YourField, 'interesting'), LENGTH(YourField)) field
  FROM YourTable
  ) t

そして、ここにフィドルがあります:http ://sqlfiddle.com/#!2/539b6/2

幸運を。

于 2013-02-05T01:39:12.747 に答える