Oracle中LIKE语句优化
1。尽量不要使用 like
1。尽量不要使用 like '%%'
2。对于 like '%' (不以 % 开头),Oracle可以应用 colunm上的index
3。对于 like '%…' 的 (不以 % 结尾),可以利用reverse + function index 的形式,变化成 like '%'
建测试表和Index,注意,,重点在于带reverse的function index。同时,一定要使用CBO才行
create table test_like as select object_id,object_name from dba_objects;
-------建立测试表
create index test_like__name on test_like(object_name);
------建立索引
create index test_like__name_reverse on test_like(reverse(object_name));
------建立反向索引
analyze table test_like compute statistics for table for all indexes;
------对表进行分析
都过SQLPLUS连接到数据,一定是SQLPLUS,因为下面有写命令在PLSQL的命令行中不被支持;
set autotrace trace exp
-----设定SQL跟踪
set linesize 2000
-------设定输出宽度
select * from test_like where object_name like 'AS%';
使用了索引
select * from test_like where object_name like '%S';
未使用索引
select * from test_like where reverse(object_name)like reverse('%AS');
使用了索引

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

Golang でデータベース コールバック関数を使用すると、次のことを実現できます。 指定されたデータベース操作が完了した後にカスタム コードを実行します。追加のコードを記述せずに、個別の関数を通じてカスタム動作を追加します。コールバック関数は、挿入、更新、削除、クエリ操作に使用できます。コールバック関数を使用するには、sql.Exec、sql.QueryRow、または sql.Query 関数を使用する必要があります。

GoWebSocket をデータベースと統合する方法: データベース接続をセットアップする: データベースに接続するには、database/sql パッケージを使用します。 WebSocket メッセージをデータベースに保存する: INSERT ステートメントを使用して、メッセージをデータベースに挿入します。データベースから WebSocket メッセージを取得する: データベースからメッセージを取得するには、SELECT ステートメントを使用します。

C++ の DataAccessObjects (DAO) ライブラリを使用して、データベース接続の確立、SQL クエリの実行、新しいレコードの挿入、既存のレコードの更新など、データベースに接続して操作します。具体的な手順は次のとおりです。 1. 必要なライブラリ ステートメントを含めます。 2. データベース ファイルを開きます。 3. SQL クエリを実行するかデータを操作するための Recordset オブジェクトを作成します。 4. 特定のニーズに応じて結果をスキャンするか、レコードを更新します。

Go 標準ライブラリのデータベース/SQL パッケージを通じて、MySQL、PostgreSQL、SQLite などのリモート データベースに接続できます。データベース接続情報を含む接続文字列を作成します。 sql.Open() 関数を使用してデータベース接続を開きます。 SQL クエリや挿入操作などのデータベース操作を実行します。 defer を使用してデータベース接続を閉じ、リソースを解放します。

PHP データベース接続ガイド: MySQL: MySQLi 拡張機能をインストールし、接続 (サーバー名、ユーザー名、パスワード、データベース名) を作成します。 PostgreSQL: PgSQL 拡張機能をインストールし、接続 (ホスト、データベース名、ユーザー、パスワード) を作成します。 Oracle: OracleOCI8 拡張機能をインストールし、接続 (サーバー名、ユーザー名、パスワード) を作成します。実際のケース: MySQL データ、PostgreSQL クエリ、OracleOCI8 更新レコードを取得します。
