Oracle では、"with as" ステートメントは、一時テーブルを作成し、その中間結果を一時テーブル スペース内のステートメントに配置することと同じです。このステートメントを使用して、複数の一時テーブルを定義することもできます。は「with temptablename([field list]) as (select ...)」です。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
Oracle での with as の使用法について
Oracle クエリの with as 句は、一時テーブルを作成し、一時テーブル スペース内のステートメントに中間結果を配置することと同じです。クエリ内のサブクエリに名前を付け、SELECT ステートメントの先頭に置きます。構文は次のとおりです:
with temptablename([字段列表]) as (select ...) select ...
with as 句を使用して複数の一時テーブルを定義することもできます。複数の一時テーブルを作成する場合、後続の一時テーブルは以前に構築された一時テーブルにアクセスできます。構文は次のとおりです。
with temptablename1([字段列表]) as (select ...), temptablename2([字段列表]) as (select ...) select ...
説明:
(1) with as 句を使用して作成された一時テーブルは、検索クエリの完了後に削除されます。
(2) 複数の一時テーブルを作成すると、後者は以前に構築された一時テーブルにアクセスできます。
(3) クエリに同一のサブクエリが複数ある場合、サブクエリの結果がメモリ一時テーブルに格納され実行効率が高いため、一般的に with as 句が使用されます。
使用例
全部門の平均給与よりも給与総額が高い部門を問い合わせる:
1. as## を使用する必要はありません。
#コードとクエリの結果は次のとおりです。SELECT deptno,total_sal FROM (SELECT deptno,sum(sal) as total_sal FROM employee GROUP BY deptno) temp1 WHERE total_sal>( SELECT avg(total_sal) FROM (SELECT deptno,sum(sal) as total_sal FROM employee GROUP BY deptno) 10:46:44 10 ); DEPTNO TOTAL_SAL ---------- ---------- 20 5701632000 Elapsed: 00:00:02.33この例では、2 つの同一のサブクエリが 1 つのクエリに表示されます。 2. with as
10:45:47 SQL> WITH tempA AS (SELECT deptno,sum(sal) as total_sal FROM employee GROUP BY deptno) SELECT * FROM tempA WHERE total_sal>( SELECT AVG(total_sal) FROM tempA 10:46:02 10 ); DEPTNO TOTAL_SAL ---------- ---------- 20 5701632000 Elapsed: 00:00:01.42の使用 2 つのクエリの比較から、with as 句を使用するとクエリ ステートメントが簡素化され、クエリ速度が向上することがわかります。 推奨チュートリアル: 「
Oracle ビデオ チュートリアル 」
以上がoracle での with の使用法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック



