1

次のMySQLクエリを実行する必要があります。

SELECT id, name FROM mytable 
WHERE NOT CONTAINS_ANY(name, ';.<>#$!');

CONTAINS_ANYのようなものがないように見えることを除いて(2つの文字列を取得し、最初の文字列に2番目の文字列の文字が含まれているかどうかを確認します)。代わりに何ができますか?避けたい

SELECT id, name FROM mytable 
WHERE name NOT LIKE '%;%' 
  AND name NOT LIKE '%.%' 
  AND etc. etc.

と同様の醜さ。

4

1 に答える 1

1

正規表現を使用する:

SELECT id, name
FROM mytable 
WHERE name not rlike '[;.<>#$!]';
于 2013-03-12T12:13:11.420 に答える