ホームページ  >  記事  >  データベース  >  指定された文字を含まないOracleでクエリを実行する方法

指定された文字を含まないOracleでクエリを実行する方法

WBOY
WBOYオリジナル
2022-03-01 10:49:2412360ブラウズ

方法: 1. ステートメント「select * from table name where order_no not likecharacters」を使用してクエリを実行します; 2. ステートメント「select * from table name where not regexp_like (order_no,characters)」を使用してクエリを実行します。

指定された文字を含まないOracleでクエリを実行する方法

このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。

指定された文字を含まない Oracle でクエリを実行する方法

開発プロセス中に、ユーザーが抽出したいデータ列に YF、ZF、および ZF の文字列が含まれていないという要件が発生しました。 and JD.

方法 1:

select * from table  where  order_no not like '%YF%' and order_no not like '%ZF' and order_no not like '%JD%'

方法 1 は少し愚かな気がします。REGEXP_LIKE には複数の REGEXP_LIKE を含めることができると思いました。not を前に追加すると、含まれない関数を実現できます。メソッドは次のとおりです:

メソッド 2:

select * from table where not regexp_like(order_no,'YF|ZF|JD')

どちらのメソッドも実装できますが、効率の問題があります。2 か月間 110,000 データをクエリした後、メソッド 1 には 18 秒かかり、メソッド 2 には 18 秒かかりました15 秒で、方法 1 を 3 回連続でテストしました。方法 1 の方が 2 ~ 3 秒速くなります。データ量が多い場合は、方法 1 を使用することをお勧めします。

推奨チュートリアル: 「Oracle ビデオ チュートリアル

以上が指定された文字を含まないOracleでクエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。