oracleデータベースクエリのselectクエリフィールドに他のテーブルを関連付ける方法


このような動的に生成されたsqlクエリ文の書き方は、

select A . 1,A . 2,B . ,C . from A ,B ,C [where A ,B ,C ]
であるが、この方法には、このクエリ文を動的に生成するためのトラフィック論理プログラムが依然として複雑であるという欠点がある。ここでは、ビジネスロジックの複雑さを低減するクエリsqlの生成方法を紹介します。このようにして作成されたsql文は、一般的な方法のようにselectフィールド、fromのテーブル、およびwhere文を同時に動的に修正する必要がなく、selectフィールド、fromのテーブルだけでなく、selectのフィールドを変更します。このように本当に業務ロジックはsql文を生成する注目点を3+個から1つに減らすことができます。ここでは、まず、学生の基本状況を反映した情報テーブル、studentテーブル、学生に関する情報を格納した二つのコードテーブル――sexCodeテーブル、grade Code(年齢コード表)を作成し、次のように表文を作成します。それぞれの表に情報を記入します。

select A . 1,A . 2,B . ,C . from A [where A ]
は最後に、一般的なsqlクエリ方式と本明細書で提唱されているクエリ方式とそのクエリ結果の比較を提供する。共通のクエリ方式とそのクエリ結果は以下の通りである。
ID
NAME
SEX
GRADE
AGE
1
2
李四
女の人
一年生
11
2
3
王五
男の人
二年生
9
3
1
張三
男の人
二年生
8
4
5
韓六
女の人
三年生
6
5
4
劉二
女の人
8
この問題についての問い合わせ方法とその照会結果は以下のとおりです。
ID
NAME
AGE
SEX
GRADE
1
1
張三
8
男の人
二年生
2
2
李四
11
女の人
一年生
3
3
王五
9
男の人
二年生
4
4
劉二
8
女の人
5
5
韓六
6
女の人
三年生
注:1.両者の性能については、ここでは単なるテストを行っただけで、1000件のデータクエリは時間がかかります。しかも、本明細書で述べた方法は普通の方法よりやや優れています。
2.この方法は現在oracleデータベースでのみ実現し、テストしています。他のデータベースは自分でテストしてください。