PASSIONのSQL文の実行順序
2070 ワード
SQLの実行手順は?
1,SQL文は構造化された照会言語として、各種データベースの操作に適用されます。一般的にDDL文、DML文、DCL文に分けられます。
ステートメント、TPL文など。一つのプログラミング言語には対応するデータタイプがあります。varrhar、character、Integer、decimal、float
clob、blobなどのデータタイプ。データベースから与えられた論理ビューはデータベースです。テーブル構造の列です。実は、私達はDatabaseを理解したいです。
instanceの概念は、ハードディスクに保存されているのはすべてバイナリのデータファイルです。ハードディスクに保存されている場合、データベースのインスタンスはSQLを解析します。
ステートメントを使用して、対応する情報を追加してhdfファイルに保存します。データベースの例はメモリ内のapplicationと実行します。これも同じです。
C/Sベースのアーキテクチャです。つまり、クライアントを介してリモートデータベースを操作することができる理由です。
2,DML言語に対応して、その実行順序、すなわちデータベースインスタンスの解析の順序を知る必要があります。
Fromの字句----対応する時計の構造を現してメモリの中に着きます。
Where字句――条件に合った行をフィルタリングします(グループ関数は使用できません)。
Group by字句――データをグループ化し、グループ毎の値をグループ化する。
having――条件に合わないグループを削除する(グループ関数またはグループ関数の別名を使用することができます)
Select字句――それを新たな表構造にアレンジする。
order by――新しいテーブル構造を並べ替えます。
列を行に変換しますか?
1,需要:記録成績表gradeがあります。それぞれ三つのフィールドname、subject、reultがあります。
張三、国語、80
張三、数学、90
張三、物理、100
李四、国語、90
李四、数学、120
李四、物理、60
展示結果:
name、国語、数学、物理
張三さん、 80, 90, 100
李四さん、 90, 120,60
SQL文:
1,SQL文は構造化された照会言語として、各種データベースの操作に適用されます。一般的にDDL文、DML文、DCL文に分けられます。
ステートメント、TPL文など。一つのプログラミング言語には対応するデータタイプがあります。varrhar、character、Integer、decimal、float
clob、blobなどのデータタイプ。データベースから与えられた論理ビューはデータベースです。テーブル構造の列です。実は、私達はDatabaseを理解したいです。
instanceの概念は、ハードディスクに保存されているのはすべてバイナリのデータファイルです。ハードディスクに保存されている場合、データベースのインスタンスはSQLを解析します。
ステートメントを使用して、対応する情報を追加してhdfファイルに保存します。データベースの例はメモリ内のapplicationと実行します。これも同じです。
C/Sベースのアーキテクチャです。つまり、クライアントを介してリモートデータベースを操作することができる理由です。
2,DML言語に対応して、その実行順序、すなわちデータベースインスタンスの解析の順序を知る必要があります。
Fromの字句----対応する時計の構造を現してメモリの中に着きます。
Where字句――条件に合った行をフィルタリングします(グループ関数は使用できません)。
Group by字句――データをグループ化し、グループ毎の値をグループ化する。
having――条件に合わないグループを削除する(グループ関数またはグループ関数の別名を使用することができます)
Select字句――それを新たな表構造にアレンジする。
order by――新しいテーブル構造を並べ替えます。
列を行に変換しますか?
1,需要:記録成績表gradeがあります。それぞれ三つのフィールドname、subject、reultがあります。
張三、国語、80
張三、数学、90
張三、物理、100
李四、国語、90
李四、数学、120
李四、物理、60
展示結果:
name、国語、数学、物理
張三さん、 80, 90, 100
李四さん、 90, 120,60
SQL文:
SELECT name ,sum((CASE WHEN g.subject=' ' THEN g.result END)) " ",
sum((CASE WHEN g.subject = ' ' THEN g.result END)) " ",
sum((CASE WHEN g.subject= ' ' THEN g.result END)) " " FROM grade g GROUP BY name