Latest web development tutorials

SQLiteの組合句

UNION句のSQLiteの/演算子は、SELECT文の2つ以上を組み合わせるために使用され、それが任意の重複行を返しません。

UNIONを使用するには、それぞれの列の数は、選択した列選択式の同じ、同じ数、同じデータ型である必要があり、それらが同じ順序を持っていますが、それらは必ずしも同じ長さを持っていないことを確実にします。

文法

UNION基本的な構文は次のとおりです。

SELECT column1の[、COLUMN2]
TABLE1 FROM [、table2の]
[WHERE条件]

UNION

SELECT column1の[、COLUMN2]
TABLE1 FROM [、table2の]
[WHERE条件]

ここでは任意の式を使用することができ、必要に応じて条件を与えられました。

下の2つのテーブルがあると仮定し、以下のように(1)会社のテーブルは、次のとおりです。

sqliteの> COMPANYから選択*;
IDのNAME AGEアドレスSALARY
---------- -------------------- ---------- ---------- ----------
1ポール32カリフォルニア20000.0
2アレン25テキサス15000.0
3テディ23ノルウェー20000.0
4マーク25リッチモンド65000.0
5デイビッド27テキサス85000.0
6金22サウスホール45000.0
7ジェームス・24ヒューストン10000.0

以下のように(2)別の表DEPARTMENTは、次のとおりです。

ID DEPT EMP_ID
---------- -------------------- ----------
1請求1
2エンジニアリング2
3ファイナンス7
4エンジニアリング3
5財務4
6エンジニアリング5
7財務6

さて、次のようにのは、2つのテーブルを結合するために、SELECT文とUNION句を使用してみましょう:

sqliteの> SELECT EMP_ID、NAME、DEPTはCOMPANY INNER FROM DEPARTMENTを登録しよう
        COMPANY.ID = DEPARTMENT.EMP_ID ON
   UNION
     SELECT EMP_ID、NAME、DEPT会社からLEFT OUTERがDEPARTMENTを登録しよう
        COMPANY.ID = DEPARTMENT.EMP_ID ON;

これにより、以下の結果が得られます。

EMP_ID NAME DEPT
---------- -------------------- ----------
1ポール・ITの請求
2アレンEngineerin
3テディEngineerin
4マーク・ファイナンス
5デイビッドEngineerin
6キム・ファイナンス
7ジェームズ・ファイナンス

UNION ALL句

UNION ALL演算子は、重複を含む2つのSELECT文の結果を結合するために使用されます。

UNIONは同じルールがUNIONにALL演算子を適用適用されます。

文法

次のようにUNION ALLのための基本的な構文は次のとおりです。

SELECT column1の[、COLUMN2]
TABLE1 FROM [、table2の]
[WHERE条件]

UNION ALL

SELECT column1の[、COLUMN2]
TABLE1 FROM [、table2の]
[WHERE条件]

ここでは任意の式を使用することができ、必要に応じて条件を与えられました。

さて、次のようにのは、ALL句は、2つのテーブルを結合するSELECT文とUNIONを使用してみましょう:

sqliteの> SELECT EMP_ID、NAME、DEPTはCOMPANY INNER FROM DEPARTMENTを登録しよう
        COMPANY.ID = DEPARTMENT.EMP_ID ON
   UNION ALL
     SELECT EMP_ID、NAME、DEPT会社からLEFT OUTERがDEPARTMENTを登録しよう
        COMPANY.ID = DEPARTMENT.EMP_ID ON;

これにより、以下の結果が得られます。

EMP_ID NAME DEPT
---------- -------------------- ----------
1ポール・ITの請求
2アレンEngineerin
3テディEngineerin
4マーク・ファイナンス
5デイビッドEngineerin
6キム・ファイナンス
7ジェームズ・ファイナンス
1ポール・ITの請求
2アレンEngineerin
3テディEngineerin
4マーク・ファイナンス
5デイビッドEngineerin
6キム・ファイナンス
7ジェームズ・ファイナンス