2

1つのテーブルに列の詳細があります。その列には、電子メールの内容がHTML形式で格納されます。列のデータ型はblobです。電子メールのコンテンツを検索して見つけるための私の要件には、英語以外の文字、つまり外国語が含まれています。

51000レコードのテーブル。51000レコードでは、英語以外の文字を含む電子メールのみをフィルター処理する必要があります。100以上になる可能性があります。これらのレコードをフィルタリングしたら、Google翻訳を使用して言語を手動で識別します。

4

1 に答える 1

0

MySQLでは、次のようになります。

SELECT foo 
FROM bar
WHERE somecolumn REGEXP '[^\x00-\x80]+'

ASCII 範囲 0 ~ 128 にない文字の照合。

また、おそらく:

WHERE NOT HEX(COLUMN) REGEXP '^([0-7][0-9A-F])*$';

REGEXP '[^[.NUL.]-[.DEL.]]'

REGEXP '[^ -~]'.

必要に応じてパターンを調整する必要があります。

また、ここに示されている斬新なアプローチ: How can I find non-ASCII characters in MySQL?

WHERE columnToCheck <> CONVERT(columnToCheck USING ASCII)

于 2013-02-20T18:41:30.637 に答える